迅睿的数据库连接信息保存在站点公共配置 config/database.php(常量 CONFIGPATH),由安装向导生成,运行时由框架类 Config\Database 读取并与默认参数合并。
业务代码一般通过 \Phpcmf\Service::M() 访问数据库,无需直接改框架目录中的配置类。
| 路径 | 说明 |
|---|---|
config/database.php | 站点实际连接配置(安装后生成,可手改;勿提交明文密码到公开仓库) |
dayrui/System/Config/Database.php | 框架侧配置类(默认驱动、字符集等),启动时合并站点配置。禁止修改 |
环境检测会检查 config/database.php 是否可写/存在。
安装第 2 步填写主机、库名、账号、表前缀后写入该文件。
安装生成的典型结构如下(连接组名为 default):
| 键名 | 说明 |
|---|---|
hostname | 数据库主机(本机常用 127.0.0.1 或 localhost) |
username / password | 账号密码 |
database | 库名;不能为纯数字,不能含 . |
DBPrefix | 表前缀(安装时会转小写;默认常见为 dr_) |
未在 database.php 中写出的项,会使用框架默认值,例如:
DBDriver:MySQLi(主流环境)
charset / DBCollat:utf8mb4 / utf8mb4_general_ci
DBDebug、cacheOn、pConnect 等连接与调试相关参数
查询相关目录默认指向 WRITEPATH.'database/'(即 cache/database/)
安装过程会检测 MySQL 是否支持 utf8mb4,建议使用 MySQL 5.7+。
所有系统表名由 DBPrefix + 逻辑表名组成(如前缀 dr_ 时,计划任务表为 dr_cron)。
同一库中若已存在相同前缀的表,安装会提示「已安装过」,需换库名或换前缀。
Model 中通过 $this->dbprefix() / 连接对象的 DBPrefix 自动加前缀,手写 SQL 时务必带上正确前缀。
框架支持在 $db 数组中配置多个命名连接组;除 default 外的组会被映射为内部的 db1、db2…。
业务侧可通过模型切换数据源(如 _load_db_source / 模型提供的切换方法,以实际 API 为准)。
若配置了 $db['failover'],会作为默认连接的备用(failover)信息合并进默认组。
日常增删改查优先封装在 Model 中,避免控制器里散落原生 SQL。
改主机、库名、密码、前缀:编辑 config/database.php 后保存,确认 PHP 语法正确,再刷新站点。
不要改 dayrui/System/Config/Database.php 来存放账号密码。
生产环境限制 config/ 的 Web 直链访问;配置文件权限仅运行用户可读写。
备份库时连同记录当前 DBPrefix;还原到新环境时同步改配置文件。
迁移服务器后,优先检查本文件与 PHP MySQLi 扩展是否可用。