解决问题方法汇总:ROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysq

/var/lib/mysql/mysql.sock 这个目录是my.cnf中配置的,连接localhost通常通过一个Unix域套接字文件进行,即这个mysql.sock文件。如果套接字文件被删除了,本地客户就不能连接。
解决问题方法汇总:ROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysq_第1张图片
systemctl status mysql查看mysql状态如下
解决问题方法汇总:ROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysq_第2张图片
可以判定除了Failed to start LSB: start and stop MySQL 没有其他错误。
解决方案:
方法一:
重启服务器
方法二:
建立软连接,/var/lib/mysql是mysql安装路径,如果没有找到mysql.sock文件则忽略方法二。

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

我用了以上两种方法都没有解决问题。
方法三:
进入mysql安装目录,再进入bin目录,执行

service mysql start

报错如下,mysqld.pid也是my.cnf文件中配置的,上图my.cnf中mysql.pid位于/var/run/mysql下,但是发现并没有该目录(最开始是有的,可能因为某些原因被删除了),于是手动创建目录/var/run/mysql,并修改权限chmod 777 /var/run/mysql 或者 chown mysql:mysql /var/run/mysql
在这里插入图片描述
然后再次执行service mysql start,启动成功
在这里插入图片描述
解决问题方法汇总:ROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysq_第3张图片

你可能感兴趣的:(Linux)