YY博客

分享英语网站运营的经验

By

/var/run/mysqld/mysqld.sock无法连接的解决办法

今天在给朋友开空间的时候,发现数据库的/var/run/mysqld/mysqld.sock无法连接,很是奇怪。因为在我安装mysql数据库的时候,通过mysql -uroot -p是可以正常连接的,不知道什么原因,今天再使用这个命令的时候,提示“Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)”。
开始我还以为mysql数据库没有启动,我先查看了一下mysql的状态,是正常启动的。这就不清楚是什么原因导致的了。
于是我就尝试着用mysql –socket=/tmp/mysql.sock -uroot -p发现能连接上了。那这就是第一种方法了!
既然可以通过–socket=/tmp/mysql.sock 来连接,而直接使用的时候是用/var/run/mysqld/mysqld.sock,为什么不搞个软连接了,于是就有了第二个方法:
mkdir -p /var/run/mysqld
ln -s /tmp/mysql.sock /var/run/mysqld/mysqld.sock
最后测试用mysql -uroot -p可以正常连接了,不再用–socket了!
以上的方法是暂时的方法,因为/tmp/下的文件,重新启动后就没有了,想要得到最终的解决办法,还是要找到产生这个问答的原因。
其实原因就是,在你卸载系统中以前安装的MYSQL的时候,没有清除/etc/my.cnf文件,所以,大家在出现这样的问题的时候,一定要先检查一下,你的/etc/目录里面,有没有你系统中以前安装过的配置文件,确保这里没有问题。

发表回复

您的电子邮箱地址不会被公开。