MySQL数据库错误:Communications link failure 10
用JDBC连接MySQL数据库,出现错误:“Communicationslinkfailure:Thelastpacketsuccessfullyreceivedfrom...
用JDBC连接MySQL数据库,出现错误:“Communications link failure:The last packet successfully received from the server was 344,068 milliseconds ago. The last packet sent successfully to the server was 3 milliseconds ago.” 。在网上看到很多说是wait_timeout的问题,默认8小时,空闲超过8小时会报上述错误。但是我出错时距离上次成功写入间隔只有6分钟,为什么还会报这种错误??
运行show variables like 'wait_timeout',查看是28800 展开
运行show variables like 'wait_timeout',查看是28800 展开
展开全部
MySQL服务器默认的空闲时间超过8个小时,MySQL将自动断开该连接,而连接池却认为该连接还是有效的,当应用申请使用该连接时,就会报错:Communications link failure,The last packet successfully received from the server was *** millisecond ago.The last packet successfully sent to the server was *** millisecond ago。
如果你使用的是hibernate,需要修改连接池的设置,因为 hibernate自带的连接池性能很差,可以使用C3P0,然后配置:
<property name="automaticTestTable">test</property>
c3p0将建一张名为Test的空表,并使用其自带的查询语句进行测试。如果定义了这个参数那么 属性preferredTestQuery将被忽略。你不能在这张Test表上进行任何操 作,它将只供c3p0测试使用。
如果你使用的是hibernate,需要修改连接池的设置,因为 hibernate自带的连接池性能很差,可以使用C3P0,然后配置:
<property name="automaticTestTable">test</property>
c3p0将建一张名为Test的空表,并使用其自带的查询语句进行测试。如果定义了这个参数那么 属性preferredTestQuery将被忽略。你不能在这张Test表上进行任何操 作,它将只供c3p0测试使用。
展开全部
你的连接被断开了而且是在空闲的时候,这可能是你的网络,和部署数据库的服务器上的参数设置有关。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
关闭windows防火墙:按下windows+r 组合键,调出运行窗口,输入firewall.cpl,单击“打开或关闭windows防火墙”,全部选中“关闭windows防火墙(不推荐)”单选框。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
遇到同样的问题,请问您解决了没
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询