偶尔,我的Java/Tomcat6/Debian Squeeze应用程序无法与MySql服务器通信。Tomcat应用程序位于前端服务器上,而MySql位于单独的、仅运行MySql的服务器上。一个典型的错误信息如下所示:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was56588 milliseconds ago.
The last packet sent successfully to the server was 56588 milliseconds ago, which
is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the
server configured values for client timeouts, or using the Connector/J connection property
'autoReconnect=true' to avoid this problem.
给定的超时时间只有60秒,看起来非常短。如果是一个小时或更长时间,我将简单地设置后台任务每隔几分钟ping一次DB服务器。我已经在打开的URL中添加了autoReconnect参数,但没有明显的影响。
你有什么想法吗? 谢谢 Pat