ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'

解决mysql 在linux下报 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'  不能连接的问题。

mysql连接一般有两种方式  TCP/IP 和socket

TCP/IP用于远程连接 客户端和服务端的关系

socket连接用于本地服务和数据之间的 管道连接 每次登陆数据库刷新mysql.sock

进入正题

 不能通过mysql.sock连接MySQL问题 这个问题主要提示是,不能通过 ‘/tmp/mysql.sock’连到服务器,mysql 使用php标准配置正是用过’/tmp/mysql.sock’,一些mysql安装方法将mysql.sock放在/var/lib/mysql.sock或者其他的什么地方,你可以通过修改/etc/my.cnf文件来修正它,打开文件,可以看到如下的东东:

[mysqld]

socket=/var/lib/mysql.sock

改一下就好了,但也会引起其他的问题,如mysql程序连不上了,再加一点:

[mysql]

socket=/tmp/mysql.sock

或者还可以通过修改php.ini中的配置来使php用其他的mysql.sock来连

或者用这样的方法:

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

建立软连接

解决问题。 

你可能感兴趣的:(ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock')