会话变量不同于 MariaDB 中的全局变量
Session Variables different to global Variables in MariaDB
我是 运行 前面有一个 HAProxy-LB 的 Galera 集群。
但是我的用户报告会话变量 wait_timeout
设置为 60.
我用
SHOW SESSION VARIABLES LIKE "%wait_timeout%"
对我来说,结果是 wait_timeout 610
.
在我的 /etc/mysql/my.cnf
中(在每个集群节点上)设置了值“28800”(默认)
我可以确认这是被 运行 使用的:
SHOW GLOBAL VARIABLES LIKE "%wait_timeout%"
结果是 wait_timeout 28800
知道为什么这不适用于新会话吗? HAProxy 是 afaik 端口 3306 上的一个愚蠢的转发器..
编辑:更新了所有集群节点上的所有包。还是一样的问题。
我什至尝试用 root 的 mysql 套接字连接检查它,并且新会话产生 wait_timeout
值为 60。
通常 SESSION VARIABLES
初始化 到 GLOBAL
建立连接时的设置.之后,可以更改任一 组设置。
然而,wait_timeout
尤其棘手。不仅有SESSION
和GLOBAL
,还有interactive和batch。此外,InnoDB 具有类似的值。
610
是一个不寻常的值。一定是某些人或某些程序更改了它。
您是否达到了意外的极限?
可以使用“ping”来保持连接。
您可以检查连接是否已断开,然后重新启动它。
请为您的案例提供更多细节。
我发现了问题。
在不同的配置中(一些管理员在 /etc/mysql/conf.d/finetuning.cnf
下为“微调”做了一个单独的配置)是一个名为 interactive_timeout
的变量,它被设置为 60
。这似乎是将 wait_timeout
的会话变量设置为 60
而不是使用全局变量中的 wait_timeout
(28800
)。
注释掉 interactive_timeout
解决了我的问题。
我是 运行 前面有一个 HAProxy-LB 的 Galera 集群。
但是我的用户报告会话变量 wait_timeout
设置为 60.
我用
SHOW SESSION VARIABLES LIKE "%wait_timeout%"
对我来说,结果是 wait_timeout 610
.
在我的 /etc/mysql/my.cnf
中(在每个集群节点上)设置了值“28800”(默认)
我可以确认这是被 运行 使用的:
SHOW GLOBAL VARIABLES LIKE "%wait_timeout%"
结果是 wait_timeout 28800
知道为什么这不适用于新会话吗? HAProxy 是 afaik 端口 3306 上的一个愚蠢的转发器..
编辑:更新了所有集群节点上的所有包。还是一样的问题。
我什至尝试用 root 的 mysql 套接字连接检查它,并且新会话产生 wait_timeout
值为 60。
通常 SESSION VARIABLES
初始化 到 GLOBAL
建立连接时的设置.之后,可以更改任一 组设置。
然而,wait_timeout
尤其棘手。不仅有SESSION
和GLOBAL
,还有interactive和batch。此外,InnoDB 具有类似的值。
610
是一个不寻常的值。一定是某些人或某些程序更改了它。
您是否达到了意外的极限?
可以使用“ping”来保持连接。
您可以检查连接是否已断开,然后重新启动它。
请为您的案例提供更多细节。
我发现了问题。
在不同的配置中(一些管理员在 /etc/mysql/conf.d/finetuning.cnf
下为“微调”做了一个单独的配置)是一个名为 interactive_timeout
的变量,它被设置为 60
。这似乎是将 wait_timeout
的会话变量设置为 60
而不是使用全局变量中的 wait_timeout
(28800
)。
注释掉 interactive_timeout
解决了我的问题。