原因:
此异常为jdbc自身的超时限制,一般为应用调用jdbc的API设置了queryTimeout超时限制,当成功获取数据库连接执行sql的时候与mysql服务端断开,在queryTimeout设置的时间之后又恢复了mysql服务端的连接。
解决办法:
(1)增加queryTimeout参数值
(2)检查mysql服务是否有异常
(3)检查mysql客户端与服务端网络是否稳定
(4)检查服务端是否开启了防火墙
2、异常信息:Caused by: java.net.ConnectException: Connection timed out: connect
异常栈:
原因: 在获取连接的时候与服务端断开连接 解决办法: (1)配置数据库连接池,并检查连接池配置是否正确,探活功能是否生效 (2)检查网络是否正常,数据库服务端是否正常(3) 检查服务端防火墙是否开启
3、异常信息:Caused by: java.net.SocketException: Software caused connection abort: recv failed
异常栈:
原因:
客户端成功获取到数据库连接, 执行sql从服务端读取数据发生了网络中断。
解决办法:
(1)检查mysql服务器
(2)检查与mysql服务端通讯是否异常
(3) 检查服务端防火墙是否开启
4、异常信息:java.net.SocketException: Connection reset
异常栈:
原因:
客户端获取连接执行sql的时候,在发送数据或者写入数据的时候与服务端连接断开
解决办法:
(1)检查mysql服务器
(2)检查与mysql服务端通讯是否异常
(3) 检查服务端防火墙是否开启
5、异常信息:java.net.NoRouteToHostException: No route to host
异常栈:
原因:
获取mysql连接的时候服务端开启了防火墙
解决办法:
关闭服务端防火墙