proxool连接池空闲连接中断问题解决

本文介绍了解决MySQL连接超时问题的方法,通过调整my.ini文件中的interactive_timeout和wait_timeout参数,以及使用Proxool连接池配置自动重连功能,确保长时间运行的应用不会因连接断开而失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址:http://www.proxool.com/html/proxoolerror/20080308/49.html
mysql 八小时断开连接异常,一起说明下.

这里以mysql 8小时断开连接说下

mysql的my.ini(my.cnf)本身有个设置

interactive_timeout

wait_timeout

是设置断开的时间设置,愚蠢的版本就是直接加大这两个值

正确的解决办法

<driver-url>jdbc:mysql://localhost/testdb?autoReconnect=true&useUnicode=true&characterEncoding=utf-8</driver-url>

加上 autoReconnect=true

还有使用

<house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>

配置文件看起来像这样的

proxool.xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- the proxool configuration can be embedded within your own application's.
Anything outside the "proxool" tag is ignored. -->
<something-else-entirely>
<proxool>
<alias>DBTest</alias>
<driver-url>jdbc:mysql://localhost/testdb?autoReconnect=true&useUnicode=true&characterEncoding=utf-8</driver-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver-properties>
<property name="user" value=""/>
<property name="password" value=""/>
</driver-properties>
<house-keeping-sleep-time>9000</house-keeping-sleep-time>
<!-- <prototype-count>3</prototype-count> -->
<maximum-connection-count>25</maximum-connection-count>
<minimum-connection-count>5</minimum-connection-count>
<house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>
</proxool>
</something-else-entirely>


如果使用Hibernate+Proxool在hibernate.cfg.xml也需要加上

<property name="connection.autoReconnect">true</property>

看起来像这样的



<property name="hibernate.connection.provider_class">org.hibernate.connection.ProxoolConnectionProvider</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>


<property name="statement_cache.size">25</property>
<property name="jdbc.fetch_size">50</property>
<property name="jdbc.batch_size">50</property>

<property name="connection.autoReconnect">true</property>
<property name="connection.autoReconnectForPools">true</property>
<property name="connection.is-connection-validation-required">true</property>

<property name="hibernate.proxool.pool_alias">DBTest</property>
<property name="hibernate.proxool.xml">proxool.xml</property>


<mapping resource="hibernate/map/test.hbm.xml" />
</session-factory>

</hibernate-configuration>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值