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

2 篇文章 0 订阅

  最新在用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。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值