show global variables like 'wait_timeout'; 默认值是28800,sleep需要经过28800秒后,才会主动断开连接。 可以适当修改这个值,修改的方法如下:# vi /etc/my.cnf[mysqld] wait_timeout=10# /etc/init.d/mysql restart不过这个方法太生硬了,线上服务重启无论如何都应该尽可能避免,看看如何在MySQL命令行里通过SET来设置:mysql> set global wait_timeout=10;mysql> show global variables like 'wait_timeout'; +----------------------------+-------+ | Variable_name | Value | +----------------------------+-------+ | wait_timeout | 10 | +----------------------------+-------+
另外设置一下脚本的运行时间限制。set_time_limit();
默认值是28800,sleep需要经过28800秒后,才会主动断开连接。
可以适当修改这个值,修改的方法如下:# vi /etc/my.cnf[mysqld]
wait_timeout=10# /etc/init.d/mysql restart不过这个方法太生硬了,线上服务重启无论如何都应该尽可能避免,看看如何在MySQL命令行里通过SET来设置:mysql> set global wait_timeout=10;mysql> show global variables like 'wait_timeout';
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| wait_timeout | 10 |
+----------------------------+-------+
为什么会有这么多等待连接呢。按常理只能有一个连接啊?是不是?