连接MySQL找不到mysql.sock文件的解决办法
运行程序可能会报错:Can’t connect to local MySQL Server through socket ‘/tmp/mysql.sock’
这个错误的提示是说,不能通过’/tmp/mysql.sock’连接到服务器。Mysql.sock 是创建与mysqld服务器相关的MySQL通信端点所使用的套接字。而PHP标准配置正是通过’/tmp/mysql.sock’来连接数据库,可能是一些mysql的安装方法将mysql.sock放到了别的地方,可以通过修改/etc/mysql/my.cnf文件(或者/etc/my.conf文件,和mysql安装的方法有关,该配置文件的路径可能会有所不同)来修改它,打开文件可以看到如下的语句:
[mysqld]
Socket = /var/lib/mysql/mysql.sock
说明mysqld.sock文件放在了/var/lib/mysql/文件夹下,所以不能在/tmp 路径下找到该文件,通过做一个链接文件就可以解决这个问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
:
您可以在命令行下手动输入如下命令: ln -s /var/lib/mysqld/mysqld.sock /tmp/mysql.sock 修改完之后,程序就可以正常启动了。
如果还是不能启动的话,可能是由于MySQL服务器没有打开,如果MySQL服务器没有打开的话,在/var/lib/mysql/目录下就不会有 mysql.sock这个文件,所以即使做了链接文件就没有用,因为它根本找不到/var/lib/mysql/mysql.sock文件。所以使用命令开启MySQL服务器:
$service mysqld start 如果想让MySQL服务器在每次计算机重启时启动,键入如下命令(root用户身份): $chkconfig mysqld on