Codeigniter 报错 Unable to connect to your database server using the provided settings

时间:2024-10-30 08:26:06

  最新在用php开发我的个人网页,刚接触,效率很慢,各种问题都需要学习.比如如何获得当前时间这么简单的问题也要谷歌一下.

在使用Codeigniter操作数据库的时候报错Unable to connect to your database server using the provided settings.在网上找了一下,可能会有很多情况出现这个问题,先要问题的真正原因.找到一个打印详细原因的办法.在config/的后面添加下面的代码:

echo '<pre>';
 print_r($db['default']);
echo '</pre>';

echo 'Trying to connect to database: ' .$db['default']['database'];
$dbh=mysql_connect
(
$db['default']['hostname'],
$db['default']['username'],
$db['default']['password'])
or die('Cannot connect to the database because: ' . mysql_error());
mysql_select_db ($db['default']['database']);

echo '<br />   Connected OK:'  ;
die( 'file: ' .__FILE__ . '--> Line: ' .__LINE__);

再次访问的时候就出打印出详细错误:No such file or directory!

找到了一篇文章:./1642678/1229555

这里记录一下:

  1. 首先确定是mysql_connect()mysql_pconnect()的问题,故障现象就是函数返回空,而mysql_error()返回“No such file or directory”。

  2. 写个phpinfo页面,找到mysql.default_socketmysqli.default_socketpdo_mysql.default_socket

  3. 启动mysql,执行命令 STATUS; 记下UNIX socket的值。

  4. 如果2和3的值不一样,则打开(可以从phpinfo页面中找到的位置,默认是/private/etc/),将2中提到的三个配置项的值改成3的值。

  5. 重启apache。