上下求索

mysql8小时自动断开问题解决

上一篇 / 下一篇  2012-11-26 16:02:41

1.jdbc配置增加参数autoReconnect=true

MySQL官方不推荐使用autoReconnect=true,参见http://bugs.mysql.com/bug.php?id=5020

(注意这里说的版本是3.0.14-production)
需要另外找别的办法来解决超过8小时,链接断开的问题。

2.反空闲设置

由于问题产生的根本原因在于服务到数据库的连接长时间没活动,既然重新连接的办法无效,就可以尝试另外一种办法,就是反空闲。
自己写一个线程来反空闲的话,比较麻烦。
最后在网上找到一个办法。为hibernate配置连接池,推荐用c3p0,然后配置c3p0的反空闲设置idle_test_period,只要小于MySQL的wait timeout即可。当然其他的类似能够实现反空闲的连接池配置也是一样的可以的。

3.数据库参数修改

Windows下在%MySQL HOME%/bin下有mysql.ini配置文件

Linux系统下的配置文件为/etc/my.cnf。

其中wait_timeout就是负责超时控制的变量,其时间为长度为28800s,就是8个小时,那么就是说MySQL的服务会在操作间隔8小时后断开,需要再次重连。


TAG:

引用 删除 wise622453   /   2012-12-10 11:05:53
5
 

评分:0

我来说两句

我的栏目

日历

« 2024-04-18  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 126694
  • 日志数: 65
  • 建立时间: 2009-06-24
  • 更新时间: 2013-11-01

RSS订阅

Open Toolbar