MySQL 连接超时后进入休眠模式

标签 mysql database-connection

我有一个在 Centos 6 上运行的 MySQL 5.7.16。我读到了这两个配置变量,

interactive_timeout - interactive time out for mysql shell sessions in seconds like mysqldump or mysql command line tools.

wait_timeout - the amount of seconds during inactivity that MySQL will wait before it will close a connection on a non-interactive connection in seconds.

我在服务器中将这两个变量设置为120秒,这意味着在此时间之后,交互式(mysql shell)和非交互式(如前端应用程序)的连接都应该断开如果它们处于“ sleep ”模式,则会自动执行。

我观察到来自应用程序的一些 session 以及来自不同 IDE(例如 MySQL Workbench)的其他 TCP/IP 连接甚至在 120 秒后仍在运行。有时它们会持续超过 200 秒。

我的配置文件中还需要进行其他设置吗?

最佳答案

您是否将 GLOBAL 变量设置为 120?

使用

SET GLOBAL wait_timeout = 120

已安装

SET wait_timeout= 120

请记住,只有新连接才会刷新该值。

运行:

SELECT @@global.wait_timeout, @@session.wait_timeout;

检查真实值。

关于MySQL 连接超时后进入休眠模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43207890/

相关文章:

php - 将textarea中的文本插入MySQL数据库而不丢失格式

php - 使用 MySQL 和 group_concat 变量创建新行

asp.net - 如何在 SQL Server Express 2008 中创建新数据库并允许连接?

java - 连接数据库时出现连接错误

java - 了解 Tomcat 连接池设置

php - mysql_real_escape_string() 发生限制查看谷歌地图

mysql - 如何获得mysql请求的答案并入库?

php - SQL插入大量数据的效率

mysql - Sequel Pro 和 MySQL 连接失败

java - 建议 : Java GUI Using JFrame