MySQL wait_timeout变量 - GLOBAL vs SESSION [英] MySQL wait_timeout Variable - GLOBAL vs SESSION
本文介绍了MySQL wait_timeout变量 - GLOBAL vs SESSION的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
SHOW VARIABLES LIKE%wait%
结果:28800
SET @@ GLOBAL.wait_timeout = 300
显示全局变量,如%wait%
结果:300
显示会话变量如%wait%
结果:28800
我对结果感到困惑。为什么最后一个查询会给出结果:28800?
解决方案
您的会话状态是在开始会话后设置的,默认情况下,如果您在 SET @@ GLOBAL.wait_timeout = 300
之后断开连接,则请取消当前的GLOBAL值。 然后重新连接,你会看到
SHOW SESSION VARIABLES LIKE%wait%;
结果:300
同样, / p>
mysql> SET session wait_timeout = 300;
您会得到
的MySQL> SHOW SESSION VARIABLES Like'wait_timeout';
+ --------------- + ------- +
|变量名|值|
+ --------------- + ------- +
| wait_timeout | 300 |
+ --------------- + ------- +
SHOW VARIABLES LIKE "%wait%"
Result: 28800
SET @@GLOBAL.wait_timeout=300
SHOW GLOBAL VARIABLES LIKE "%wait%"
Result: 300
SHOW SESSION VARIABLES LIKE "%wait%"
Result:28800
I am confused by the results. Why does the last query give Result:28800 ?
解决方案
Your session status are set once you start a session, and by default, take the current GLOBAL value.
If you disconnected after you did SET @@GLOBAL.wait_timeout=300
, then subsequently reconnected, you'd see
SHOW SESSION VARIABLES LIKE "%wait%";
Result: 300
Similarly, at any time, if you did
mysql> SET session wait_timeout=300;
You'd get
mysql> SHOW SESSION VARIABLES LIKE 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout | 300 |
+---------------+-------+
这篇关于MySQL wait_timeout变量 - GLOBAL vs SESSION的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文