首页 > 数据库技术 > 详细

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

时间:2016-02-01 23:54:14      阅读:331      评论:0      收藏:0      [点我收藏+]

登录服务器,使用root用户连接mysql时出现错误提示:

$ bin/mysql -uroot -p
Enter password: 
ERROR 2002 (HY000): Cant connect to local MySQL server through socket /tmp/mysql.sock (2)

尝试重启mysql

$ ./mysql.server restart
Shutting down MySQL (Percona Server).......                [  OK  ]
rm: cannot remove `/var/lock/subsys/mysql: Permission denied
Starting MySQL (Percona Server)..                          [  OK  ]
[mysql@tongxtx mysql]$ bin/mysql -uroot -p
Enter password: 
ERROR 2002 (HY000): Cant connect to local MySQL server through socket /tmp/mysql.sock (2)

还是报同样的错。先看一下my.cnf

more my.cnf |grep sock
socket               = /opt/mysql/mysql.sock
socket              = /opt/mysql/mysql.sock

可以看到我的mysql已经声明了mysql.sock的文件位置,而错误提示为/tmp/mysql.sock; 也就是说虽然我的mysql声明了sock文件的位置,但是客户端在连接的时候, linux系统总是去/tmp目录下去找,找到了原因,就可以对症下药了:

为mysql.sock创建链接文件:

$ ln -s /opt/mysql/mysql.sock /tmp/mysql.sock
然后再次连接mysql,成功连接

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

原文:http://www.cnblogs.com/huangxm/p/5176462.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!