我已经阅读了 MySQL 文档,问题并没有回答我的问题。 访问问题 1, 访问问题 2 - 连接轮询和面临错误, 访问问题3
我已经将MySQL的
GLOBAL wait_timeout
设置为600
秒,这意味着它将在10分钟后结束。正如我测试的那样,它在 14 分钟内结束;我附上了响应错误图像。
这是设置全局的图像
wait_timeout
现在发生了什么?我已经访问了一些实现连接轮询的问题,在那里我找到了一些解决方案。 但是当我执行这些解决方案时,
wait_timeout
停止工作。这让我很头疼。我希望wait_timeout
在我设定的时间结束,但它没有结束。看到下面的图片wait_timeout
没有得到更新
特别注意,
SET GLOBAL
(对于nost设置)对当前登录的用户没有影响。之后登录的任何人都将继承它。
wait_timeout
很棘手。交互式/批处理,全局/会话/尚未重新登录。
抱歉,但我不知道在什么情况下设置哪个。
经过一些研究,我找到了一些信息
wait_timeout
是一个全局变量,用于设置空闲客户端连接的超时时间。它适用于所有客户端连接,无论使用何种协议(包括 X 协议连接)。当客户端连接空闲(即不执行任何查询)的时间超过指定的wait_timeout
时,服务器将关闭连接。
mysqlx_interactive_timeout
也是一个全局变量,用于设置使用 MySQL X 协议的交互式会话的超时时间。它仅适用于 X 协议连接,用于设置客户端和服务器之间交互会话的最长持续时间。交互式会话定义为已发出至少一条语句但未发出需要更长超时的语句的会话,例如长时间运行的查询或事务。当超过mysqlx_interactive_timeout
值时,会话被服务器关闭。
mysqlx_wait_timeout
是另一个全局变量,它为使用 MySQL X 协议的客户端连接设置超时。它仅适用于 X 协议连接,用于设置客户端等待服务器发送响应的最长持续时间。当超过mysqlx_wait_timeout
值时,客户端连接被服务器关闭。
总之,
wait_timeout
设置空闲客户端连接的超时时间,mysqlx_interactive_timeout
设置使用 X 协议的交互式会话的超时时间,mysqlx_wait_timeout
设置使用 X 协议的客户端连接等待响应的超时时间.
我试过运行这个命令
SHOW GLOBAL VARIABLES;
。
它向我展示了这三个变量设置为 wait_timeout
,mysqlx_interactive_timeout
=> 这是与 MySQL X 协议相关的参数,这是 MySQL 8.0 中引入的用于 MySQL 文档存储的新协议。它用于设置使用 X 协议的交互式会话的超时。具有与 wait_timeout=28800 相同的值
mysqlx_wait_timeout
是另一个与 MySQL X Protocol 相关的参数,用于设置使用 X Protocol 的客户端连接的超时时间。具有与 wait_timeout=28800 相同的值。