您的位置:首页 > 编程语言 > PHP开发

PHP函数 mysql_connect()连接MySQL数据库错误的解决办法

2014-02-21 20:11 375 查看
最近在学习《细说PHP》这本书。第五章的示例程序info.php在CentOS 64位虚拟机运行的时候,其中MySQL版本那一栏是空白信息。我查看了info.php源码,开始以为是MySQL数据库的用户名和密码填写错了,仔细检查没有错误之后,便查看了Apache的error_log,得到如下消息:

mysql_connect(): No such file or directory

在网上查了一下,说是本地socket设置与默认的不一样,导致php无法找到mysql的socket文件。根据网上提供的方法,需要做如下操作。

首先,在MySQL中用status查看数据库状态,如下所示:

mysql Ver 14.14 Distrib 5.1.69, for redhat-linux-gnu (x86_64) using readline 5.1

Connection id:
10

Current database:

Current user:
root@localhost

SSL: Not in use

Current pager:
stdout

Using outfile:
''

Using delimiter:
;

Server version:
5.1.69 Source distribution

Protocol version:
10

Connection:
Localhost via UNIX socket

Server characterset:
latin1

Db characterset:
latin1

Client characterset:
latin1

Conn. characterset:
latin1

UNIX socket:
/var/lib/mysql/mysql.sock

Uptime:
20 hours 55 min 30 sec

其中,标红的部分是我们需要的。然后打开php.ini文件,需要将mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket的值设置为标红后面的那个目录。重启apache服务器,后续info.php工作正常,MySQL的版本信息能够正常显示了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐