interactive_timeout和wait_timeout的联系
发布时间:2022-03-30 12:55 所属栏目:115 来源:互联网
导读:interactive_timeout = 28800 wait_timeout = 28800 #这两个参数默认都是28800s,即8个小时; interactive_timeout指的是mysql在关闭一个交互的连接之前所要等待的秒数 wait_timeout指的是mysql在关闭一个非交互的连接之前所要等待的秒数 通过mysql客户端连接
interactive_timeout = 28800 wait_timeout = 28800 #这两个参数默认都是28800s,即8个小时; interactive_timeout指的是mysql在关闭一个交互的连接之前所要等待的秒数 wait_timeout指的是mysql在关闭一个非交互的连接之前所要等待的秒数 通过mysql客户端连接数据库是交互式连接,通过jdbc连接数据库是非交互式连接 (1)session级别修改interactive_timeout=10,wait_timeout默认不变。 mysql>set session interactive_timeout=10; mysql>show variables like '%timeout%'; | interactive_timeout | 10 | | wait_timeout | 28800 等10s后,此会话连接没有断开。 (2)session级别修改wait_timeout =10,interactive_timeout默认不变。 mysql>set session wait_timeout=10; mysql>show variables like '%timeout%'; | interactive_timeout | 28800 | | wait_timeout | 10 等10s后,此会话断开,随便输入一条命令报错,然后重新连接,但是此时连接id号发生变化了,并且wait_timeout会话设置失效,恢复默认值。 mysql>show processlist; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 5 Current database: *** NONE *** (3)global级别修改interactive_timeout=10,wait_timeout默认不变。 mysql>set global interactive_timeout=10; mysql>quit [root@Darren1 ~]# mysql -uroot -p147258 mysql>show variables like '%timeout%'; | interactive_timeout | 10 | | wait_timeout | 10 等10s后,此会话断开,随便输入一条命令报错,然后重新连接,但是此时连接id号发生变化了, mysql>show processlist; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 9 Current database: *** NONE *** (4)global级别修改wait_timeout=10,interactive_timeout 默认不变。 mysql>set wait_timeout=10; mysql>quit [root@Darren1 ~]# mysql -uroot -p147258 mysql>show variables like '%timeout%'; | interactive_timeout | 28800 | | wait_timeout | 28800 设置无效。 总结: 1.控制连接最大空闲时长的是wait_timeout参数。 2.对于交互式连接,类似于mysql客户端连接,wait_timeout的值继承自服务器端全局变量interactive_timeout。 对于非交互式连接,类似于jdbc连接,wait_timeout的值继承自服务器端全局变量wait_timeout(未演示)。 3.判断一个连接的空闲时间,可通过show processlist输出中Sleep状态的时间 如:会话19为本地show processlist的id号,id18为另外一个空闲会话,可以看出这个会话已经空闲了61s mysql>show processlist; +----+------+-----------+------+---------+------+----------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+------+---------+------+----------+------------------+ | 18 | root | localhost | NULL | Sleep | 61 | | NULL | | 19 | root | localhost | NULL | Query | 0 | starting | show processlist | +----+------+-----------+------+---------+------+----------+------------------+ 4.根据生产库经验,把这个两个参数的设置相同,都为5分钟: interactive_timeout = 300 wait_timeout = 300 (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读