大发体育娱乐在线-大发体育娱乐官方网站-大发体育娱乐登录网址
做最好的网站

8小时空闲后一连失效的化解

来源:http://www.dfwstonefabricators.com 作者:数据库 人气:133 发布时间:2019-09-27
摘要:出于mysql私下认可8小时两次三番无访谈,就能够断开.为此查了一下材质,有同种比较简单的技术方案: mysql 8小时空闲后总是失效的缓慢解决,mysql8钟头 查了须臾间发现应用程序和mysql数据

出于mysql私下认可8小时两次三番无访谈,就能够断开.为此查了一下材质,有同种比较简单的技术方案:

mysql 8小时空闲后总是失效的缓慢解决,mysql8钟头

查了须臾间发现应用程序和mysql数据库建设构造连接,要是赶过8时辰应用程序不去拜会数据库,数据库就断掉连接 。那时再度访问就能抛出特别。

有关mysql自动断开的标题研究结果如下,

1、在协和的主次中插入定期访谈数据库的情势,举个例子利用Timer,Quartz恐怕spring中简易Quartz。

2、在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的值后才显得修改后的。

2、修改参数
那八个参数的暗中同意值是8时辰(60*60*8=28800)。测验过将这个参数改为0,系统自动将以此值设置为1。相当于说,不可能将该值设置为永远。
将那2个参数设置为24钟头(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

假诺一段时间内尚未数据库访谈则mysql本身将割裂连接,之后会见java访谈连接池时对数据库的数据通道早已关闭了

8钟头空闲后三回九转失效的化解,mysql8时辰查了一晃意识应用程序和mysql数据库创设连接,假使抢先8钟头应用程序不去拜见数据库,数据...

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

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

将那2个参数设置为24时辰(60*60*24=604800)即可。  set interactive_timeout=604800;  set wait_timeout=604800; 

但依然并不全面,一旦超越这些时刻尚未连接,依然会报错.为此小编陈设了第三种方案,防止超时,以期终极消除

2.定期访谈数据库,在逾期以内访谈mysql,就足以幸免mysql断开连接

 

var cnt=0;
var conn=function(){
    connection.query('USE '+ db);     //查询MySQL中数据库
    cnt++;
    console.log("Mysql重连接成功! 次数:"+cnt);
}


//conn;
    setInterval(conn, 60*1000);//循环执行

 

本文由大发体育娱乐在线发布于数据库,转载请注明出处:8小时空闲后一连失效的化解

关键词:

上一篇:搜索之简单应用

下一篇:没有了

最火资讯