首页 > 数据库 >MySQL的wait_timeout 参数 set global 设置不生效

MySQL的wait_timeout 参数 set global 设置不生效

时间:2023-06-24 10:01:08浏览次数:51  
标签:set show variables global timeout mysql interactive wait

MySQL服务连接数突然暴增,登录服务查看大都是sleep进程,并且1分钟会启用一个新的连接,紧急处理方案是需要手动去释放连接数。

登录服务器 查看当前超时时间

mysql> show variables like '%timeout%';
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| interactive_timeout | 8000 |
| slave_net_timeout | 60 |
| wait_timeout | 8000 |
+-----------------------------+----------+
13 rows in set (0.01 sec)

mysql> set global wait_timeout=600;
Query OK, 0 rows affected (0.00 sec)

mysql>  exit
Bye

退出后重新登录MySQL

mysql> show variables like '%timeout%';
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| interactive_timeout | 8000 |
| slave_net_timeout | 60 |
| wait_timeout | 8000 |
+-----------------------------+----------+
13 rows in set (0.00 sec)

发现  wait_timeout 在线更改后值没有变化

查看资料发现 

如果查询时使用的是show variables的话,会发现设置好像并没有生效,这是因为单纯使用show variables的话就等同于使用的是show session variables,查询的是会话变量,只有使用show global variables,查询的才是全局变量。

网上还有一种说法 

interactive_timeout和wait_timeout的默认值都是28800(8小时)当这两个参数同时出现在里时,会以interactive_timeout的值为准。也就是说不管wait_timeout的值是多少,用show variables like '%timeout%';查看时显示的两个值都是一样的,并且都是interactive_timeout的值。

mysql> show variables like '%timeout%';
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| interactive_timeout | 8000 |
| wait_timeout | 8000 |
+-----------------------------+----------+
13 rows in set (0.00 sec)

mysql> set global interactive_timeout=800;
Query OK, 0 rows affected (0.00 sec)

 mysql>show variables like '%timeout';
+-------------------------+-------+
| Variable_name           | Value |
+-------------------------+-------+
| interactive_timeout     | 800   |
| wait_timeout            | 8000   |
+-------------------------+-------+

mysql> show global variables like '%timeout';
+-------------------------+-------+
| Variable_name           | Value |
+-------------------------+-------+
| interactive_timeout     | 800   |
| wait_timeout            | 8000   |
+-------------------------+-------+
8 rows in set (0.00 sec)

退出 重新登录MySQL

mysql> show variables like '%timeout';
+-------------------------+-------+
| Variable_name           | Value |
+-------------------------+-------+
| interactive_timeout     | 800   |
| wait_timeout            | 800   |
+-------------------------+-------+
8 rows in set (0.00 sec)

mysql>

以上可以看到,如果修改interactive_timeout的话wait_timeout也会跟着变,而只修改wait_timeout是不生效的。

标签:set,show,variables,global,timeout,mysql,interactive,wait
From: https://www.cnblogs.com/pyng/p/17500729.html

相关文章

  • “Terminate Server”; . setqt4env; ./helloQT4 -qws;
    [root@FriendlyARM/sdcard]#./helloQT4QWSDisplay::Data::init:InvalidargumentClientcan'tattachtomainrammemory.Aborted{退出Qtopia2.2.0或者Qt4程序等一切Qt程序,退出Qtopia2.2.0的方法是:在Qtopia2.2.0中点“设置”中的“关机”可出现如下界面,点......
  • memset 与 fill 函数的区别
    在使用时发现memset和fill函数有异同,为了防止考试的时候挂分,专门了解了一下。memset函数由于memset的底层实现是类似二进制实现的字节赋值,只能赋为\(0\),\(1\),\(INF\)或\(-INF\),有比较大的局限性。举个例子:\(int\)类型有\(4\)个字节,每个字节有\(8\)个数字,一......
  • Asynchronous & Synchronous Reset
    第1章复位的目的复位信号在数字电路里面的重要性仅次于时钟信号。对一个芯片来说,复位的主要目的是使芯片电路进入一个已知的,确定的状态。主要是触发器进入确定的状态。在一般情况下,芯片中的每个触发器都应该是可复位的。在某些情况下,当在高速应用程序中使用流水线触发器(移位寄......
  • -- Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the sys
     系统是centos7.6001、问题--CouldNOTfindOpenSSL,trytosetthepathtoOpenSSLrootfolderinthesystemvari 002、解决方法[[email protected]]#yum-yinstallopensslopenssl-devel 003、再次编译(刚才的报错解决)。  ......
  • MYSQL中find_in_set函数用法详解
    感谢参考:https://blog.csdn.net/carefree31441/article/details/1195636851、官方涵义(MySQL手册中语法说明)FIND_IN_SET(str,strlist):str要查询的字符串,strlist需查询的字段,参数以”,”分隔,形式如(1,2,6,8,10,22);该函数的作用是查询字段(strlist)中是否包含(str)的结果,返......
  • UE5 C++ TSet
    概念TSet是一种快速容器类,用于在排序不重要的情况下存储唯一元素TSet也是值类型,支持常规复制、赋值和析构函数操作,以及其元素较强的所有权TSet被销毁时,其元素也将被销毁。键类型也必须是值类型创建TSet<FString>FruitSet;添加元素Add将提供键加入setFruitSet.......
  • Set系列集合
    Set系列集合无序:存取顺序不一样不重复:可以去除重复的无索引:没有带索引的方法,所以不能使用普遍for循环遍历,不能用索引获取元素set集合的实现类HashSet:无序不重复无索引LinkedHashSet:有序不重复无索引TreeSet:可排序不重复无索引 Set接口中的方法上......
  • 「Solution Set」JOISC 2022
    Day1监狱首先我们感性理解:每名囚犯一定是依次走到自己的目的地的。因为如果起点或终点挡着别人的路,让他先走到目的地就行了。而在中间的话还容易挡着别人的路。所以如果一个人的起点在另一个人的路径上,那么这个人必须先走,如果一个人的终点在别人的路径上,那么这个人必须后走。......
  • Vue的set主要是做什么的
    这个时候可以用this.$set(),给新添加的对象属性,或数组元素添加getter,setter方法简单说即是:当你发现你给对象加了一个属性,在控制台能打印出来,但是却没有更新到视图上时,也许这个时候就需要用到this.$set()这个方法了methods:{btn(){Vue.set(this.student,'age......
  • 有了它,再也不用写setContentView了!好用,真的好用~
    前言大家多多少少都用过或者看过注解(Annotation),比如最常见@Override、@Deprecated等。近年来一些比较流行的三方框架都使用的注解,像ButterKnife(渐渐被Databinding、ViewBinding取代,已经停止维护)、Dagger、Room等等。那为什么这些大牛都这么热衷于使用注解呢?原因肯定是注解的好处多......