问题背景:

[root@localhost ~]# mysql --host 192.168.1.11 --user=kari -p
Enter password: 
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.1.11' (111)

=======================分割线==============================

解决方案:

指定远程IP的时候,必须要指定一下端口号。

mysql --host 192.168.1.11 --user=kari  -p  --port=3306
mysql --host 192.168.1.11 --user=kari  -p  -P 3306
mysql --host 192.168.1.11 --user=kari  -p  -P3306

=========我的排查过程==========

1.先想到的是  网络问题,yum install telnet -y 安装了telnet工具, 执行telnet 192.168.1.11 3306 可以通。

2.由于确认mysql是启动的,且用的常用的3306端口,有的server侦听的其他3307,6000端口。

这里检查监听端口号; 确认是侦听所有IP的请求0.0.0.0,端口号3306,以及本机socket stream,端口侦听没问题。

3.想不出有哪里不对了。 去查看了一下mysql的error log, 问题复现的时间,err日志没有任何新增。说明还是没有发送请求到MySQL Server;

4.到这里就有点没招,网上一顿乱搜,很多类似的10061报错,也有111,但是完全不符合我这情况啊。

5. 偶尔看到有人用-P指定端口遇到相同报错,我没指定端口也报错, 想到IP和PORT乃是网络五剑客啊。 

于是指定一下端口号,通了。

其中111报错,总结的最多的是

MySQL远程连接ERROR 2003 (HY000):Can't connect to MySQL server on'XXXXX'(111) 的问题_迷途大灰狼的博客-CSDN博客

虽然他并没有解决我的问题!!!!

===============End,若有帮到你,记得点赞,收藏,加关注哦==============

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐