天天看點

mysql下的wait_timeout參數

mysql中有一個配置參數wait_timeout.

參數的意思:指的是mysql在關閉一個非互動的連接配接之前所要等待的秒數.

(1)如果設定大小,那麼連接配接關閉的很快,進而使一些持久的連接配接不起作用

(2)如果設定太大,容易造成連接配接打開時間過長,在show processlist時,能看到太多的sleep狀态的連接配接,進而造成too many connections錯誤

(3)一般希望wait_timeout盡可能地低

set global wait_timeout=10;

(root@localhost) [(none)]> show global variables like 'wait_timeout';

error 2006 (hy000): mysql server has gone away

no connection. trying to reconnect...

connection id:    79

current database: *** none ***

+---------------+-------+

| variable_name | value |

| wait_timeout  | 3600  |

1 row in set (0.00 sec)

這裡一個容易把人搞蒙的地方是如果查詢時使用的是show variables的話,會發現設定好像并沒有生效,這是因為單純使用show variables的話就等同于使用的是show session variables,預設的逾時時間為28800s,查詢的是會話變量,隻有使用show global variables,查詢的才是全局變量。

繼續閱讀