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

来源:互联网 发布:男士 爽肤水 知乎 混合 编辑:程序博客网 时间:2024/05/19 00:17

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

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

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!

找到了一篇文章:http://hoarn.blog.51cto.com/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的值不一样,则打开php.ini(可以从phpinfo页面中找到php.ini的位置,默认是/private/etc/php.ini),将2中提到的三个配置项的值改成3的值。

  5. 重启apache。

0 0
原创粉丝点击