返回列表 发帖

关于TIME_OUT的问题

摸索了半天,终于明白了一点:interactive_timeout和wait_timeout的关系如下:
1.interactive_timeout和wait_timeout的默认值都是2880(8小时)
2.当这两个参数同时出现在[mysqld]里时,会以interactive_timeout的值为准。也就是说不管wait_timeout的值是多少,用show variables like '%timeout%';查看时显示的两个值都是一样的,并且都是interactive_timeout的值。

但是connect_timeout
的效果就看不到了,它的默认值是10。
connect_timeout在获取连接阶段(authenticate)起作用,但如何才能看到效果呢?我在[mysqld]里设置了connect_timeout=5,然后重启了mysql,但依然可以连接进去啊,超过5秒依然还是可以输入sql语句。而且我在登录的时候./bin/mysql -uroot -p之后输入密码,又等了超过了5秒但还是顺利的登录进去了。这是怎么回事呢?到底如何才能看到connect_timeout的效果呢?

time telnet 192.168.224.43 3306接过如下:
Trying 192.168.224.43...
Connected to 192.168.224.43 (192.168.224.43).
Escape character is '^]'.
8     /5.1.49-log
          [Z1(o{=42;tU-|PWF8'Connection closed by foreign host.  //这一长串每次都不一样,不知是啥玩意?

real    0m5.004s
user    0m0.000s
sys     0m0.002s
后来我把connect_timeout改为8,出的结果为:
real    0m8.005s
user    0m0.001s
sys     0m0.003s
返回列表