codeigniter数据库配置核心是修改application/config/database.php中$db['default']的hostname、username、password、database、dbdriver五项,并确保$active_group='default'且数据库服务正常运行。

新手修改CodeIgniter数据库配置,核心就三点:找到正确文件、填对关键参数、确认环境匹配。别跳步骤,否则连不上库时排查起来反而更费时间。
定位 database.php 配置文件
CodeIgniter 的数据库配置统一放在 application/config/database.php 文件中。注意不是 system/ 下的同名文件,也不是根目录下的 config.php —— 所有自定义配置都应改 application/ 里的对应文件。
如果项目已启用多环境(如 development / production),可能在 application/config/{environment}/database.php 下存在独立配置,此时优先修改对应环境目录下的版本,并确保 $active_group 指向它。
修改 default 连接组的关键字段
打开 database.php 后,主要关注 $db['default'] 数组。只需改清楚以下 5 项,基本就能连上:
-
hostname:数据库服务地址,本地常用
localhost或127.0.0.1;Docker 或远程库需填实际 IP 或域名 - username 和 password:数据库账号密码,确认 MySQL/MariaDB 中该用户已创建且有对应库权限
- database:要连接的具体库名,必须提前在数据库中手动创建好(CI 不自动建库)
-
dbdriver:驱动类型,MySQL 推荐用
mysqli(比旧版mysql更安全),PostgreSQL 则填postgre
其他字段如 dbprefix、char_set、dbcollat 可按需调整,但非必需;初学阶段保持默认即可,比如 'char_set' => 'utf8' 和 'dbcollat' => 'utf8_general_ci' 能避免中文乱码。
检查并激活配置生效
改完保存后,别急着刷新页面——先确认两件事:
-
$active_group = 'default'; 这行必须存在且值与你修改的数组键一致(例如设为
'test'就得去改$db['test']) - 如果开启了
db_debug(开发时建议设为TRUE),连接失败会直接报错,方便定位是账号错、库不存在,还是端口不通 - 确保 Web 服务器(Apache/Nginx)和数据库服务都在运行,PHP 已加载 mysqli 或 pdo_mysql 扩展
验证是否配置成功
最简单的验证方式:在任意控制器里写一行测试代码:
$this->load->database();
print_r($this->db->conn_id);
如果输出一个 resource 或 mysqli 对象,说明连接已建立;若报错,错误信息通常会明确提示问题所在(比如 “Access denied” 是账号密码错,“Unknown database” 是库名不存在)。











