连接Mysql提示Can’t connect to local MySQL server through socket的解决方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了连接Mysql提示Can’t connect to local MySQL server through socket的解决方法相关的知识,希望对你有一定的参考价值。

mysql,mysqldump,Mysqladmin,php连接mysql服务常会提示下面错误:

 

这是由于修改mysql服务的了socket文件mysql.sock位置,而导致无法通过mysql socket文件连接到mysql服务引起的,具体解决办法如下:
1、查看mysql服务的socket文件位置:
mysql socket文件的位置是在/etc/my.cnf中设置的,cat /etc/my.cnf内容如下:

其中socket等于的路径就是socket文件的位置,我们只要修改my.cnf文件,告诉mysql,mysqldump,mysqladmin mysql服务的socket位置在哪里就可以。

2、修改my.cnf文件:
在/etc/my.cnf文件中添加如下内容,并重启mysqls服务,即可解决mysql,mysqldump,mysqladmin的“Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘”问题:

 

3、php连接mysql服务提示"Can‘t connect to local MySQL server through socket..."的解决方法
有时候mysql服务正常运行,用户名密码也完全正确,使用php的mysql_connect函数却连接不了mysql,调用php的mysql_error()函数提示“Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘”,这是我们需要修改/etc/php.ini文件。
在/etc/php.ini文件中"[MySQL]"项下找到"mysql.default_socket",并设置其值指向正确的mysql服务socket文件即可,如:

 

4、python连接mysql提示"Can‘t connect to local MySQL server through socket..."的解决方法:
在连接mysql数据库函数中指定socket文件,如下:

 

5. php pdo连接mysql提示"Can‘t connect to local MySQL server through socket..."的解决方法:
同样在连接字符串添加mysql socket文件的位置即可,如下:

以上是关于连接Mysql提示Can’t connect to local MySQL server through socket的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

连接Mysql提示Can’t connect to local MySQL server through socket的解决方法

连接mysql提示Can’t connect to local MySQL server through socket的解决方法

zabbix连接Mysql提示Can’t connect to local MySQL server through socket的解决方法

连接mysql数据库时提示2003 can't connect to MySQL server on ip(10060)的解决办法

Can’t connect to local MySQL server through socket

连接MySQL的10060错误:Can't connect to MySQL server on '*.*.*.*'(10060) (转自https://www.cnblo