ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysq
今天在linux里安装mysql,运行时遇到这样的错误
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
上网查了下:
这种情况大多数是因为你的mysql是使用rpm方式安装的,它会自动寻找 /var/lib/mysql/mysql.sock 这个文件,
通过unix socket登录mysql。
常见解决办法如下:
1、
创建/修改文件 /etc/my.cnf,至少增加/修改一行
[root@host1 tmp]#vi /etc/my.cnf
# The following options will be passed to all MySQL clients
18 [client]
19 port = 3306
20 socket = /var/lib/mysql/mysql.sock
21 default_character_set=utf8
22
23 # Here follows entries for some specific programs
24
25 # The MySQL server
26 [mysqld]
27 default_character_set=utf8
28 port = 3306
29 socket = //var/lib/mysql/mysql.sock
30 user = mysql
#将红色部分,修改为你的mysql.sock的正确位置,通常不是在 /tmp/ 下就是在 /var/lib/mysql/ 下
2、
指定IP地址,使用tcp方式连接mysql,而不使用本地sock方式
[root@host1 tmp]mysql -h127.0.0.1 -uuser -ppassword
3、
为 mysql.sock 加个连接,比如说实际的mysql.sock在 /tmp/ 下,则
[root@host1 tmp]#ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock即可