CodeIgniter错误mysql_connect(): No such file or directory解决方法

日期:04-05  浏览:

首先CodeIgniter连接数据库连不上,总是显示连接错误,但是又没有error信息,难以debug。

解决方案是:在application/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__);

显示报错,问题是mysql_connect(): No such file or directory报错。
因为以前也有用过CI都没有这个错误,谷歌一下发现是因为MySQL是brew安装的,因为路径问题导致PHP无法获取相关数据。

解决方案:
如果你已经有了 /tmp/mysql.sock 但是没有  /var/mysql/mysql.sock 你应该:

复制代码 代码如下:

cd /var
mkdir mysql
cd mysql
ln -s /tmp/mysql.sock mysql.sock

如果你有了 /var/mysql/mysql.sock   但是没有  mysql.sock name:

复制代码 代码如下:

cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock


上一篇:PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
下一篇:PHP正则替换函数preg_replace和preg_replace_callback使用总结

网友评论


点击图片更换


查看更多评论
 

推荐文章

·单点登录 Ucenter示例分析
·php中用date函数获取当前时间有误的解决办法
·用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
·php excel类 phpExcel使用方法介绍
·php自动获取关键字的方法
·PHP内存缓存Memcached类实例
·PHP spl_autoload_register实现自动加载研究
·smarty中英文多编码字符截取乱码问题解决方法