我登录到我的服务器来检查数据库的状态,并注意到SHOW PROCESSLIST;
有大量非常旧的连接正在休眠。
在连接应该被杀死之前,连接时间限制应该持续多长时间?
如何在 MySQL 5.0.51a-3ubuntu5.4 中设置时间限制?
笔记:
我正在使用 PHP 5.2.x 和 symfony 框架 1.2。
Rol*_*DBA 61
mysqld
将根据两个服务器选项超时数据库连接:
默认情况下,两者都是 28,800 秒(8 小时)。
您可以将这些选项设置在 /etc/my.cnf
如果您的连接是持久的(通过 打开mysql_pconnect
),您可以将这些数字降低到合理的值,例如 600(10 分钟)甚至 60(1 分钟)。或者,如果您的应用程序运行良好,您可以保留默认设置。这取决于你。
必须在my.cnf
(mysqld
重启后生效)中进行如下设置:
[mysqld]
interactive_timeout=180
wait_timeout=180
Run Code Online (Sandbox Code Playgroud)
如果不想重启mysql,那么运行这两个命令:
SET GLOBAL interactive_timeout = 180;
SET GLOBAL wait_timeout = 180;
Run Code Online (Sandbox Code Playgroud)
这不会关闭已经打开的连接。这将导致新连接在 180 秒内关闭。
归档时间: |
|
查看次数: |
124043 次 |
最近记录: |