码迷,mamicode.com
首页 > 数据库 > 详细

网络问题,导致 连接 容器 mysql 异常

时间:2020-08-11 15:46:26      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:七层   基础命令   exce   class   tab   相同   summary   get   mysq   

背景

今天接口添加参数,想debug下,执行直接,500异常,发现是 mysql导致。

[2020-08-11 10:52:10,428] [ERROR] [1Sbq2ZvQpY4w534jNldTJI40ht0Dh42U] com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Exception during pool initialization.
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
	at com.mysql.jdbc.Util.getInstance(Util.java:408)?
  
 

心想,昨天断电 难道mysql还没恢复,但昨天看没已经恢复了啊, 难道 端口改了? 确认了也没有改,并且 在容器中能登入成功。 想哪里出问题了,外部连接被阻塞了?

尝试1

同事吧 容器 mysql 实例换了 port 试了下,还是 相同的 异常。

尝试2

? 新建一个mysql实例,ip和port都不变

? 用客户端连接 mysql 也是 不行(以前也出现过一下,是 连接慢导致的),这次用 命令行 登入 mysql 也是 ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘172.16.0.11‘ (60) ,怀疑 ip 是否有问题,

ping ip

 bin % ping 172.16.0.11
PING 172.16.0.11 (172.16.0.11): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3

想到了 网络问题, 一看 连接的 wife, 果然不是公司的网,是 写字楼的网(昨天公司网段了。临时用了 写字楼的网)

使用 公司网络后,ping

bin % ping 172.16.0.11
PING 172.16.0.11 (172.16.0.11): 56 data bytes
64 bytes from 172.16.0.11: icmp_seq=0 ttl=62 time=11.351 ms
64 bytes from 172.16.0.11: icmp_seq=1 ttl=62 time=9.392 ms
64 bytes from 172.16.0.11: icmp_seq=2 ttl=62 time=9.150 ms

连通, mysql 客户端也连通,执行 请求,返回都正常了。。

? 网络连了 写字楼的 网络。。坑啊!!! 一开始真的没有想到。 短短几天就碰到了 2次网络的问题。

总结

1、容器 暴露对外的都是 内网的ip,并非公网, 连接时 需要 注意使用的 网络环境

2、网络知识需要多补充补充。 多用ping ip. telnet ip port. traceroute ip 这些基础命令进行排查

3、灵活的结合理论的知识,采用各种手段进行 问题排查, 如果 连接不同,可以结合 OSI七层模型先 看ip是否能连上, 然后 telnet 看 port是否有问题 ...

网络问题,导致 连接 容器 mysql 异常

标签:七层   基础命令   exce   class   tab   相同   summary   get   mysq   

原文地址:https://www.cnblogs.com/idea-persistence/p/13475280.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!