mysql无法通过mysqld.sock连接错误的解决方法

阅读更多

今天发现mysql无故无法连接,出现错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

 重启一下mysql

$ service mysql restart

 重启失败。

发现/var/run/mysqld/不存在

于是创建了mysqld文件,依然不好用,在网上找了很多方法仍然不好用,后来发现有一个要改mysqld文件的own为mysql:mysql,于是尝试了一下:

$sudo chown mysql:mysql /var/run/mysqld

 重启:

$ sudo service mysql restart

 成功。

登录:

$ mysql -uxxx -pxxx

 成功

问题终于解决。

 

所以归根到底是权限的问题。

所以如果配置文件/etc/mysql/my.cnf中设置

socket=/tmp/mysqld.sock

就不会出现问题

mysql首先搜索/etc/my.cnf下的配置,然后在搜索/etc/mysql/my.cnf,后者会覆盖前者的配置。

 

你可能感兴趣的:(MySQL,Socket)