MySQL远程访问报错ERROR 2003 (HY000):Can't connect to MySQL server on'XXXXX'(111)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a5nan/article/details/72864249

从一台linux远程连接另一台linux上的MySQL,

mysql -hxxx.xxx.xxx.xxx -uroot -p

出现ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(111)错误。

分析问题,应该是远程链接数据库连不上,直接想到的是3种可能:网络问题,端口问题,数据库配置问题。

首先检查网络:能ping通;

其次检查端口:是常规的3306端口

netstat -tunlp |grep mysqld
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      4144/mysqld 

最后检查配置/etc/mysql/my.cnf :

是否有配置skip_networking: 这使MySQL只能通过本机Socket连接(socket连接也是本地连接的默认方式),放弃对TCP/IP的监听,当然也不让本地java程序连接MySQL。——没有这个配置。
是否有配置bind_address=127.0.0.1(当然也可以是其他ip),这种情况可以指定TCP/IP连接 。有这个配置,把它注销掉,重启mysql。

再访问mysql -hxxx.xxx.xxx.xxx -uroot -p,成功登入。

猜你喜欢

转载自blog.csdn.net/a5nan/article/details/72864249