云服务器重启,出现mysql连接失败的原因(已解决)

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

以上是连接mysql时报的错。(云服务器重启后产生的问题)

解决方案

连接不到/var/run/mysqld/mysqld.sock,可能是因为重启丢失这个文件了。因此我们需要找到相应的位置创建该文件,然后重启mysql就行了。

① 执行 vi /etc/mysql/my.cnf

可以看到

1
2
!includedir /etc/mysql/conf.d/  # 被重定向到这个文件下了
!includedir /etc/mysql/mysql.conf.d/

因此我们打开 vi /etc/mysql/conf.d/ ,可以看到socket = /var/run/mysqld/mysqld.sock这个信息,表明连接指向这个文件。

接下来我们去/var/run中找这个文件,发现没有该文件,到这里我们基本上明白了,因为缺失了改文件,所以会导致连接失败。

执行以下步骤

1
2
3
sudo mkdir -p /var/run/mysqld
sudo chown mysql /var/run/mysqld/ # 设置 文件所属的用户或组
sudo service mysql restart

重启后基本就好了。

注:除非万不得已,尽量不要重启云服务器