参数 intertactive_timeout 和waittime_out

intertactive_timeout 和waittime_out

connect_timeout在获取连接阶段(authenticate)起作用
interactive_timeout 和wait_timeout在连接空闲阶段(sleep)起作用
net_read_timeout和net_write_timeout则是在连接繁 忙阶段(query)起作用

interactive_timeout 是指交互式链接空闲多长时间断开。

wait_timeout 是指非交互式链接多长时间断开。

涉及的工具:mysql 8.0 安装在本地的windows 系统

首先验证的是:interactive_timeout ,这个系统默认的时间是28800,就是8个小时,单位是秒。

打开mysql 在windows下的客户端,使用show variables like ‘%timeout’; 查看参数。

使用set variables intertactive_timeout =10; 此时如果变量前不加global ,就表示更改的是当前会话的变量,如果开新的客户端,那么将应用全局变量。我们在次就改目前会话下的。但是这样改完全不生效,所以我改了全局变量,set global variables intertactive_timeout =10,且同时更改waittime_out 也为10,更改之后退出,重新再次打开Mysql客户端,登陆上去之后,不操作空闲10秒,再使用语句查看变量,就显示我已经没有连上mysql 了。
在这里插入图片描述
此时只要从新再执行命令,就会自动连上。
在这里插入图片描述
说明已经生效,我们现在把set global variables intertactive_timeout 改回到28800,而wait_timeout 并不做修改。

在这里插入图片描述

此时等待十秒,再执行查看命令,将不会提示链接丢失。

那么wait_timeout是影响了非交互式的连接,在windows的命令行可以很容易的验证。我们先确认此时的mysql 两个timeout 的时间,此时global interactive_timeout=28800,global wait_timeout=10.

在这里插入图片描述

此时使用窗口键+r,输入cmd,切换到Mysql的bin 目录下。登陆Mysql,如果你加了path环境变量,可以直接就登陆,不用切换到bin.

在这里插入图片描述
进去之后更新会话的wait_timeout=10,等待10秒,此时链接断开,而参数interactive_timeout是28800.同样再次执行命令,将重新链接。

在这里插入图片描述

wait_timeout的作用是,设置非交互连接(就是指那些连接池方式、非客户端方式连接的)的超时时间,默认是28800,就是8小时,超过这个时间,mysql服务器会主动切断那些已经连接的,但是状态是sleep的连接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值