博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL Timeout解析
阅读量:7066 次
发布时间:2019-06-28

本文共 1473 字,大约阅读时间需要 4 分钟。

“And God said, Let there be network: and there was timeout”

在使用MySQL的过程中,你是否遇到了众多让人百思不得其解的Timeout?
那么这些Timeout之后,到底是代码问题,还是不为人知的匠心独具?
本期Out-man,讲述咱们MySQL DBA自己的Timeout。
先看一下比较常见的Timeout参数和相关解释:
connect_timeout
The number of seconds that the mysqld server waits for a connect packet before responding with Bad handshake.
interactive_timeout
The number of seconds the server waits for activity on an interactive connection before closing it.
wait_timeout
The number of seconds the server waits for activity on a noninteractive connection before closing it.
net_read_timeout
The number of seconds to wait for more data from a connection before aborting the read.
net_write_timeout
The number of seconds to wait for a block to be written to a connection before aborting the write.

从以上解释可以看出,connect_timeout在获取连接阶段(authenticate)起作用,interactive_timeout 和wait_timeout在连接空闲阶段(sleep)起作用,而net_read_timeout和net_write_timeout则是在连接繁 忙阶段(query)起作用。

获取MySQL连接是多次握手的结果,除了用户名和密码的匹配校验外,还有IP->HOST->DNS->IP验证,任何一步都 可能因为网络问题导致线程阻塞。为了防止线程浪费在不必要的校验等待上,超过connect_timeout的连接请求将会被拒绝。

即使没有网络问题,也不能允许客户端一直占用连接。对于保持sleep状态超过了wait_timeout(或interactive_timeout,取决于CLIENT_INTERACTIVE标志)的客户端,MySQL会主动断开连接。

即使连接没有处于sleep状态,即客户端忙于计算或者存储数据,MySQL也选择了有条件的等待。在数据包的分发过程中,客户端可能来不及响应 (发送、接收、或者处理数据包太慢)。为了保证连接不被浪费在无尽的等待中,MySQL也会选择有条件(net_read_timeout和 net_write_timeout)地主动断开连接。

这么多Timeout足以证明MySQL是多么乐于断开连接。而乐于断开连接的背后,主要是为了防止服务端共享资源被某客户端(mysql、mysqldump、页面程序等)一直占用。

转载于:https://www.cnblogs.com/mrray/p/3449799.html

你可能感兴趣的文章
为什么是Spring Boot
查看>>
前端之本http协议
查看>>
python基础-协程
查看>>
JavaScript数据类型
查看>>
zoj 1004 Anagrams by Stack (dfs+stack)
查看>>
iOS NSDecimalNumber 使用
查看>>
hdu 2844 混合背包【背包dp】
查看>>
函数分析题
查看>>
debian手册摘要
查看>>
TreeMap 原理
查看>>
iOS开发工具——网络封包分析工具Charles
查看>>
iis7负载均衡
查看>>
【iOS开发-47】怎样下载iOS 7.1 Simulator 以及iOS 8离线的Documentation这些文件?
查看>>
多种方式求阶乘
查看>>
页面中引入mui 地址选择,点击页面中其他input时页面回到顶部
查看>>
js团购倒计时
查看>>
9.19 数组 冒泡排序和二分法
查看>>
妈了个蛋,写了个炒鸡垃圾的脚本,也是醉了
查看>>
图论1——基础
查看>>
蒙哥玛利模幂算法
查看>>