【问题标题】:Codeigniter: Unable to connect to your database server using the provided settingsCodeigniter:无法使用提供的设置连接到您的数据库服务器
【发布时间】:2012-10-09 07:52:53
【问题描述】:

我使用codeigniter作为cms框架,如果数据库主机名是localhost,它可以正常工作。

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'test';
$db['default']['database'] = 'jinma';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;

使用上述配置可以正常工作,但如果主机名更改为:

$db['default']['hostname'] = '192.168.1.222';

发生数据库错误:

Unable to connect to your database server using the provided settings.
Filename: third_party/fuel/Loader.php
Line Number: 134

我可以 ssh 192.168.1.222, 同时在192.168.1.222,hostname为localhost也可以。

我在谷歌搜索并得到了一个解决方案来添加:

$db['default']['port'] = '3306';

但它对我不起作用,你知道吗?

谢谢你,这是我的第一个问题,很抱歉是愚蠢的。

【问题讨论】:

  • 你上传你的数据库到 192.168.1.222 了吗?
  • 是的,我可以在192.168.1.222本地运行我的网站,配置是$db['default']['hostname'] = 'localhost';

标签: php database codeigniter


【解决方案1】:

默认情况下,MySQL 服务器配置为只允许来自本地主机的绑定。

转到您的 my.cnf 并评论该行

bind 127.0.0.1

那么你应该看看你的 MySQL 用户有足够的权限从其他 ip 访问。

MySQL Remote Access

【讨论】:

  • 嗨 Stony,我认为你的答案对我有用,但不幸的是我找不到我的 my.cnf,我一直在使用 'find / -name my.cnf',结果为空(我用macport安装mysql5),那我现在该怎么办?
  • 你可以在你的进程列表中使用 ps 传真查看,也许你可以在 mysql 进程中看到加载了哪个文件。
猜你喜欢
  • 2016-04-15
  • 1970-01-01
  • 2015-09-08
  • 2020-01-11
  • 2012-03-21
  • 1970-01-01
  • 2016-07-06
  • 2018-01-19
  • 2016-02-02
相关资源
最近更新 更多