来源:http://blog.youkuaiyun.com/dzl84394/article/details/17557891
***********
碰到相同的问题,用文中的方法解决了。
另外我一个可正常运行mysql的机子上的mysqld文件夹,和mysql出错的机子上的mysqld文件夹,两者的用户、用户组都是一样的。不清楚为什么mysql出错的那个改了就好了。
***********
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
根据提示是/var/run/mysqld/mysqld.sock文件不存在。
启动的时候发现
The server quit without updating PID file (/var/run/mysqld/mysqld.pid)
没有pid文件
到/var/run/mysqld去看一下,空空如野
网上有人说在、var/lib/mysql下面,去看了一下也没有
、tmp下面也没有
突然发现/var/run/mysqld的用户是root
改之
$ sudo chown mysql:mysql /var/run/mysqld
重启
$ sudo /etc/init.d/mysql restart
问题解决
########################
########################
20151214,又碰到这个问题了,也是报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
在改完mysql密码后,重启mysql失败,然后进不去了,报了以上上错误。
$ sudo find / -name mysqld.sock
这个命令也找不到mysqld.sock
查看资料:http://www.68idc.cn/help/mysqldata/mysql/20140720117666.html
解决:
$ ps uax|grep mysql
mysql 16888 3.6 1.3 558284 49460 ? Ssl 17:32 0:00 /usr/sbin/mysqld
cloud 17027 0.0 0.0 15936 968 pts/12 S+ 17:33 0:00 grep --color=auto mysql
$ sudo kill -9 16888
然后就可以进去了。
再按正确步骤改密码,之后重启mysql也没有问题了。
#####
#####
又碰到,老方法没办法,mysql进不去,直接卸载重装
缺点:数据库中数据都丢失
sudo rm /var/lib/mysql/ -R
sudo rm /etc/mysql/ -R
然后卸载相关
注意不要执行:
sudo apt-get autoremove mysql* --purge
因为很多不相关的也卸载了。之后再碰到要具体删除对应的模块