关于如何设置mysql的interactive_timeout 与 wait_timeout参数

show   VARIABLES   where   Variable_name='wait_timeout'可以用该语句查看  
  修改是在my.ini文件中  
  [mysqld]下加入  
  wait_timeout=28800  
   
  另外还有这个参数  
  interactive_timeout=28800  
  两者有些曲别,注意一下

interactive_timeout 需在mysql_connect()设置CLIENT_INTERACTIVE选项后起作用,并被赋值为wait_timeout;

mysql>set wait_timeout = 10; 对当前交互链接有效;
mysql>set interactive_timeout = 10; 对后续起的交互链接有效;

该超时时间单位是秒,从变量从上次SQL执行后算起;当前空闲若超过该时间,则也会被强制断开。

使用GLOBAL选项,您可以获得被用于MySQL新连接的值。使用SESSION,您可以得到对于当前连接起效的值。如果您两个选项都不使用,默认值为SESSION。

这2个参数要同时设置好像才有效果 

=====================================

mysql> show processlist;
查看mysql状态时,有长时间的sleep状态的连接,这些无效的连接浪费了大量mysql的资源。解决知道,增大mysql的连接数,减少mysql的等待时间,让mysql尽快回收没用的连接。

mysql>show variables like '%timeout';

打印结果如下:

+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| connect_timeout | 5 |
| delayed_insert_timeout | 300 |
| interactive_timeout | 28800 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| slave_net_timeout | 3600 |
| wait_timeout | 28800 |
+----------------------------+-------+

interactive_timeout 需在mysql_connect()设置CLIENT_INTERACTIVE选项后起作用,并被赋值为wait_timeout;

mysql>set wait_timeout = 10; 对当前交互链接有效;
mysql>set interactive_timeout = 10; 对后续起的交互链接有效;

该超时时间单位是秒,从变量从上次SQL执行后算起;当前空闲若超过该时间,则也会被强制断开。


 



[本日志由 webfly 于 2009-09-17 11:55 AM 编辑]
文章来自: 转贴
引用通告: 查看所有引用 | 我要引用此文章
Tags: Mysql interactive_timeout wait_timeout
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.