MySQL wait_timeout参数修改
MySQL wait_timeout参数修改问题,可能经常会有DBA遇到过,下面就试验一下并看看会有什么现象。
wait_timeout分为global级及session级别,如未进行配置,默认值为28800,即8小时。
session级(session关键字可省略)

global级

此处省略对global级 与 session级参数的解释,有兴趣深入了解的小伙伴请自行学习,也可以在以下的操作中理解哦。
1. 修改global 级别wait_timeout;

修改后,查看,global级参数已修改,session级依旧,此时是否怀疑,退出会话重新登录后session级会跟着改变呢,带此疑问进行操作。

结果发现,没什么两样。那就接着看下面的操作吧。
2.修改session 级别wait_timeout;

此时本会话的参数确实已经设置成功了,但是每次都要这么设置么?退出后再看看?

果然。。。。。
此时该如何是好,莫非每次都这么弄?MySQL 数据库这个参数不会真有这么蠢吧。
此时,请想起之前配置文件里说明的一点,全文链接 https://www.cnblogs.com/gjc592/p/9199361.html
interactive_timeout=600 #服务器关闭交互式连接前等待活动的秒数,同时设置interactive_timeout和wait_timeout才会生效
wait_timeout=600 # 服务器关闭非交互连接之前等待活动的秒数。
#长时间的执行批量的MYSQL语句。最常见的就是采集或者新旧数据转化
显示同时设置interactive_timeout和wait_timeout才会生效,按照此提示,我们进行interactive_timeout参数修改。
3.修改session 级别interactive_timeout;


此时session级wait_timeout那是没变,退出重进?

又还原了。。。。
(此时是否理解session级与global级参数的区别了?)
那按之前的套路,再修改global级别的。
4.修改global级别interactive_timeout;


没有意外,果然session级的那是那个鸟样。
但是,按照上面的套路,退出重进试一下。


重进后,没设置session级的居然变了,和global级一样的。至此,我们了解到,只要同时修改global级interactive_timeout和wait_timeout才能生效。
小结:
- wait_timeout的修改要同时修改global级interactive_timeout和wait_timeout才能生效
- wait_timeout的作用是,设置非交互连接(就是指那些连接池方式、非客户端方式连接的)的超时时间,默认是28800,就是8小时,超过这个时间,mysql服务器会主动切断那些已经连接的,但是状态是sleep的连接。
- session级别的wait_timeout变量在连接初始化时,继承global的interactive_timeout参数值
- session级别的wait_timeout对当前交互连接生效(即当前连接的超时使用的是session wait_timeout,session interactive_timeout不生效)
- 新连接的session级别wait_timeout会使用global级别的interactive_timeout值覆盖,因为interactive_timeout值是对后续新连接生效
MySQL wait_timeout参数修改的更多相关文章
- MySQL wait_timeout参数设置与网上常见错误小纠
discard connection com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link fail ...
- MySQL:参数wait_timeout和interactive_timeout以及空闲超时的实现【转】
一.参数意思 这里简单解释一下两个参数,含义如下: interactive_timeout:The number of seconds the server waits for activity on ...
- Mysql - 参数修改
概述 mysql的参数可以分为两类:a. 动态参数,数据库启动期间能被修改,而修改又分为两种(global级,session级).b. 静态参数,即数据库启动期间不能修改. 接下来利用参数wait_t ...
- 关于mysql的wait_timeout参数 设置不生效的问题【转】
关于wait_timeout 有一次去online set wait_timeout 的时候发现改了不生效,如下: mysql> show variables like 'wait_timeou ...
- docker环境下mysql参数修改
原文:docker环境下mysql参数修改 需要修改log_bin为on,看了好几个博客说都需要删掉容器重新生成,然而并非如此, 我们可以用docker cp 命令将docker的文件"下载 ...
- (转)MySQL配置文件mysql.ini参数详解、MySQL性能优化
本文转自:http://www.cr173.com/html/18331_1.html my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数 ...
- MySQL配置文件mysql.ini参数详解、MySQL性能优化
my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数. my.ini分为两块:Client Section和Server Section. ...
- MySql配置参数很全的Mysql配置参数说明
MySql配置参数 很全的Mysql配置参数说明 1. back_log 指定MySQL可能的连接数量.当MySQL主线程在很短的时间内得到非常多的连接请求,该参数就起作用,之后主线程花些时间(尽管很 ...
- mysql 常见参数
my.cnf[client] 对mysql的所有客端都生效的[mysql] 只对mysql这个命令有效了[mysqd][mysqld_multi] 多实例启动[mysqld_safe][mysqldN ...
随机推荐
- js中实现多态
最近读到一本书<JavaScript设计模式与开发实践>上,讲到js的多态,我在JavaScript高级程序编程里貌似都没有见过关于这个的详细讲解,所以想问问大家有没有什么推荐的文章或者博 ...
- Android Proguard.flags LOCAL_PROGUARD_FLAGS
在Android项目中用到JNI,当用了proguard后,发现native方法找不到很多变量,原来是被produard优化掉了.所以,在JNI应用中该慎用progurad啊. 解决办法: 1.在An ...
- matlab练习程序(弧形、圆柱投影的复原)
前一段介绍了从矩形图像到圆柱的正向投影,看这里和这里.今天介绍如何从已经投影的图像反映射到原图像上. 本来此种变换一定是需要数学公式的,不过这里只是用了一个很简单的方式来完成反映射. 具体就把每一列有 ...
- linux下的动态链接库管理
LD_LIBRARY_PATH Linux环境变量名,该环境变量主要用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径.(该路径在默认路径之前查找) 移植程序时的经常碰到需要使用一些特定的动 ...
- 注入类型(Injection Type)
a) setter(重要) <property name="userDAO"> <ref bean="u"/> </propert ...
- redis的使用方式
常用的语法以及使用方式: key中不能包含回车空格等,key不要太长,占用内存. 概念介绍: 差集: a:{1,2,3} b:{2,3,4},以a为锚点,差集 ...
- BZOJ4538:[HNOI2016]网络(树链剖分,堆)
Description 一个简单的网络系统可以被描述成一棵无根树.每个节点为一个服务器.连接服务器与服务器的数据线则看做 一条树边.两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有 ...
- 使用ParseExact方法将字符串转换为日期格式
实现效果: 知识运用: DateTime结构的ParseExact方法 public static DateTime ParseExact(string s,string format,IFormat ...
- 行云管家 V4.7产品新特性-国际化版本、支持Oracle的数据库审计、主机密码自动修改策略 发布日期:2018-11-22
行云管家在线体验: 行云管家[官网]-领先的云计算管理平台-云安全,堡垒机,自动化运维 行云管家新手有礼活动: 行云管家新手有礼,新用户1元即可体验专业版-优惠券 发布日期:2018-11-22 ...
- jdbc连接各种数据库字符串
oracle driverClass:oracle.jdbc.driver.OracleDriver url:jdbc:oracle:thin:@127.0.0.1:1521:dbname mysql ...