Can 't connect to local MySQL server through socket '/tmp/mysql.sock
时间: 2023-11-20 10:56:32 浏览: 149
Can’t connect to local MySQL through socket ‘/tmp/mysql.sock’解决方法
5星 · 资源好评率100%
当出现“Can't connect to local MySQL server through socket '/tmp/mysql.sock'”错误时,可能是由于MySQL服务器未启动或MySQL服务器的套接字文件路径不正确导致的。以下是解决此问题的一些步骤:
1.检查MySQL服务器是否正在运行。可以使用以下命令检查MySQL服务器的状态:
```shell
systemctl status mysql
```
如果MySQL服务器未运行,则可以使用以下命令启动它:
```shell
systemctl start mysql
```
2.检查MySQL服务器的套接字文件路径是否正确。可以使用以下命令检查MySQL服务器的套接字文件路径:
```shell
mysql_config --socket
```
如果输出的路径与错误消息中显示的路径不同,则需要将MySQL客户端配置文件中的套接字文件路径更改为正确的路径。可以使用以下命令打开MySQL客户端配置文件:
```shell
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
```
然后,找到以下行:
```shell
socket = /tmp/mysql.sock
```
并将其更改为正确的路径,例如:
```shell
socket = /var/lib/mysql/mysql.sock
```
保存更改并退出文件。
3.如果以上步骤都无法解决问题,则可以尝试使用以下命令更改MySQL管理员密码:
```shell
/usr/local/mysql/bin/mysqladmin -u root -S /var/lib/mysql/mysql.sock password 'your.passwd'
```
其中,/usr/local/mysql/bin/mysqladmin是MySQL管理员工具的路径,-u root指定要更改密码的用户,-S /var/lib/mysql/mysql.sock指定MySQL服务器的套接字文件路径,'your.passwd'是新密码。
阅读全文