帮助中心 >  技术知识库 >  数据库 >  数据库管理 >  linux数据库登录报错:Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

linux数据库登录报错:Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

2015-12-24 16:22:35 7895

错误提示:
root@localhost ~]# mysql --socket=/tmp/mysql.sock

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

错误出现在登录数据库时候

解决方法:

[root@localhost ~]# find / -name mysql.sock
/var/lib/mysql/mysql.sock

我们可以通过系统查找知道文件位置

由于mysql 默认安装时候的mysql.sock 是在/var/lib/mysql/mysql.sock,但linux系统总是去/tmp/mysql.sock查找,所以会报错。

那么我们就是到改如何处理了

1、指定到对应位置

[root@localhost ~]# mysql --socket=/var/lib/mysql/mysql.sock
Welcome to the MySQL monitor.  Commands end with ; or /g.
Your MySQL connection id is 2 to server version: 5.0.22

Type help; or /h for help. Type /c to clear the buffer.

mysql>

这样设置相当于设置数据库配置文件my.cnf,在里面添加一句socket = /tmp/mysql.sock 

[root@SZDB mysqldata]# vi /etc/my.cnf
 [mysql]
 no-auto-rehash
 socket = /tmp/mysql.sock  #添加该行
#重启mysql服务器
[root@SZDB mysqldata]# service mysqld start
 Starting MySQL..[  OK  ]
 #再次连接正常
[root@SZDB mysqldata]# mysql -uroot -p
 Enter password: 
 mysql> show variables like version;
 +---------------+------------+
 | Variable_name | Value      |
 +---------------+------------+
 | version       | 5.6.12-log |
 +---------------+------------+

2. 创建符号连接:

 为mysql.sock增加软连接(相当于windows中的快捷方式)。

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


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: