MySQL timeout 参数详解

SHOW VARIABLES LIKE '%timeout%';

使用如上命令可以查询MySQL的超时参数配置,可以看到超时参数还是较多的,下面解释一下主要参数的作用。

1. connect_time

connect_timeout指的是连接过程中握手的超时时间,即MySQL客户端在尝试与MySQL服务器建立连接时,MySQL服务器返回错误握手协议前等待客户端数据包的最大时限。默认10秒。

2. interactive_timeout / wait_timeout

MySQL关闭交互/非交互连接前等待的最大时限。默认28800秒。

3.lock_wait_timeout

sql语句请求元数据锁的最长等待时间,默认为一年。此锁超时对于隐式访问Mysql库中系统表的sql语句无效,但是对于使用select,update语句直接访问MySQL库中标的sql语句有效。

4.net_read_timeout / net_write_timeout

mysql服务器端等待从客户端读取数据 / 向客户端写入数据的最大时限,默认30秒。

5.slave_net_timeout

mysql从复制连结等待读取数据的最大时限,默认3600秒。


以上可以看出,connect_timeout在握手认证阶段(authenticate)起作用,interactive_timeout 和wait_timeout在连接空闲阶段(sleep)起作用,而net_read_timeout和net_write_timeout则是在连接繁忙阶段(query)或者网络出现问题时起作用

posted @ 2021-07-05 21:03  雪山上的蒲公英  阅读(3150)  评论(0编辑  收藏  举报
/* 返回顶部代码 */