出于mysql私下认可八小时三番五次无访问,就会断开.为此查了弹指间资料,有同种相比较不难的消除方案:

mysql 八钟头空闲后接二连三失效的解决,mysql八钟头

查了一下意识应用程序和mysql数据库建立连接,假若当先八钟头应用程序不去拜谒数据库,数据库就断掉连接
。那时再次走访就会抛出卓殊。

关于mysql自动断开的标题商讨结果如下,

壹、在和谐的主次中插入定时访问数据库的艺术,比如选拔Timer,Quartz也许spring中总结Quartz。

二、在mysql中有连带参数设定,当数据库连接空闲一定时间后,服务器就会断开等待超时的一而再:
相关参数

mysql> show variables like '%timeout%';
+-----------------------------+----------+
| Variable_name               | Value    |
+-----------------------------+----------+
| connect_timeout             | 10       |
| delayed_insert_timeout      | 300      |
| innodb_flush_log_at_timeout | 1        |
| innodb_lock_wait_timeout    | 50       |
| innodb_rollback_on_timeout  | OFF      |
| interactive_timeout         | 28800    |
| lock_wait_timeout           | 31536000 |
| net_read_timeout            | 30       |
| net_write_timeout           | 60       |
| rpl_stop_slave_timeout      | 31536000 |
| slave_net_timeout           | 3600     |
| wait_timeout                | 28800    |
+-----------------------------+----------+
12 rows in set

 

同一时半刻间,interactive_timeout,wait_timeout 这三个参数唯有一个起效果。

毕竟是哪些参数起效果,和用户连接时钦赐的连年参数相关,缺省事态下是采纳wait_timeout。

本身在配置文件大校wait_timeout修改后在mysql中查寻到依然不起效能,于是将那四个参数都修改了,再度询问wait_timeout的值后才显得修改后的。

二、修改参数
那七个参数的私下认可值是八小时(60*60*八=28800)。测试过将那三个参数改为0,系统活动将以此值设置为1。约等于说,不可能将该值设置为永久。
将这几个参数设置为二四钟头(60*60*24=86400)。
set interactive_timeout=86400;
set wait_timeout=86400;

也足以修改my.cof,修改后重起mysql
开辟/etc/my.cnf,在性质组mysqld上边添加参数如下:
[mysqld]
interactive_timeout=28800000
wait_timeout=28800000

只要1段时间内尚未数据库访问则mysql自个儿将切断连接,之后拜访java访问连接池时对数据库的数据通道早就关闭了

八钟头空闲后接二连三失效的缓解,mysql八小时查了弹指间发觉应用程序和mysql数据库建立连接,要是抢先八钟头应用程序不去访问数据库,数据…

  1. 增加 MySQL 的 wait_timeout 属性的值。 

修改 /etc/mysql/my.cnf文件,在 [mysqld] 节中装置: 
# Set a connection to wait 8hours in idle status.  wait_timeout
=86400 

将那个参数设置为二4钟头(60*60*24=604800)即可。  set
interactive_永利皇宫登录网址 ,timeout=604800;  set wait_timeout=604800; 

但依旧并不完善,一旦当先这些日子未有连接,还是会报错.为此小编安顿了第一种方案,防止超时,以期终极消除

网站地图xml地图