数据库超时和连接池过载
此 Hibernate 问题,“com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:不允许进行操作连接关闭后,当持久连接由于不活动而隐式关闭时,就会出现这种情况。
原因:
连接已建立,但在较长时间内保持不活动状态,超过服务器的“wait_timeout”或客户端超时设置,例如“connectionTimeout”。
解决方案:
1。调整服务器和客户端超时:
2.配置连接池:
使用 C3P0 的 hibernate.cfg.xml 配置示例:
<code class="xml"><property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property> <property name="c3p0.max_size">20</property> <property name="c3p0.min_size">5</property> <property name="c3p0.timeout">1800</property> <property name="c3p0.idleTestPeriod">3600</property> <property name="c3p0.maxIdleTime">3600</property></code>
其他提示:
以上是为什么我收到'MySQLNonTransientConnectionException:连接关闭后不允许执行任何操作”以及如何修复它?的详细内容。更多信息请关注PHP中文网其他相关文章!