gpt4 book ai didi

java - 由 : com. mysql.jdbc.exceptions.jdbc4.CommunicationsException 引起

转载 作者:行者123 更新时间:2023-11-29 13:41:33 26 4
gpt4 key购买 nike

我的产品服务器出现以下异常,但几个小时后会自动解决。造成此问题的原因可能是什么

Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was234747 milliseconds ago.The last packet sent successfully to the server was 234747 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.

我们已经设置了 autoReconnect=true,从论坛我发现我们需要启用空闲连接测试。请指教

是否是应用程序中任何未关闭的连接导致了此异常?

我们使用Ibatis,下面是Ibatisconfig文件

<transactionManager type="JDBC" commitRequired="true">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver" />
<property name="JDBC.ConnectionURL"
value="<URL>?autoReconnect=true" />
<property name="JDBC.Username" value="<username>" />
<property name="JDBC.Password" value="<password>" />
<property name="JDBC.DefaultAutoCommit" value="false" />
<property name="Pool.TimeToWait" value="100" />
<property name="Pool.PingQuery" value="select 1" />
<property name="Pool.PingEnabled" value="true" />
<property name="Pool.PingConnectionsOlderThan" value="300000" />
<property name="Pool.PingConnectionsNotUsedFor" value="300000" />
</dataSource>
</transactionManager>

最佳答案

嗯,在我的项目中我遇到了同样的问题。我们使用mysql,如果连接空闲8小时,那么数据库将不可用。我们使用的解决方案是使用C3P0连接池。在这里检查一下。 http://www.mchange.com/projects/c3p0/

关于java - 由 : com. mysql.jdbc.exceptions.jdbc4.CommunicationsException 引起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18011043/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com