mysql的wait_timeout和interactive_timeout
###wait_timeout interactive_timeout####
wait_timeout :對於非互動連線,mysql在關閉它之前的等待時間
這個值的初始化根據連線客戶端的連線方式不同:有兩種方式:全域性的wait_timeout或者是全域性的interactive_timeout
interactive_timeout:對於互動連線,mysql在關閉它之前的等待時間
測試:
root:3406:(none)>show variables like '%timeout%';
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| have_statement_timeout | YES |
| innodb_flush_log_at_timeout | 1 |
| innodb_lock_wait_timeout | 50 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 21 |
| lock_wait_timeout | 31536000 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| rpl_stop_slave_timeout | 31536000 |
| slave_net_timeout | 60 |
| thread_pool_idle_timeout | 60 |
| wait_timeout | 21 |
+-----------------------------+----------+
14 rows in set (0.00 sec)
root:3406:(none)>show global variables like '%timeout%';
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| have_statement_timeout | YES |
| innodb_flush_log_at_timeout | 1 |
| innodb_lock_wait_timeout | 50 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 21 |
| lock_wait_timeout | 31536000 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| rpl_stop_slave_timeout | 31536000 |
| slave_net_timeout | 60 |
| thread_pool_idle_timeout | 60 |
| wait_timeout | 14 |
+-----------------------------+----------+
14 rows in set (0.00 sec)
root:3406:(none)>show global variables like '%timeout%';
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 4
Current database: *** NONE ***
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| have_statement_timeout | YES |
| innodb_flush_log_at_timeout | 1 |
| innodb_lock_wait_timeout | 50 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 21 |
| lock_wait_timeout | 31536000 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| rpl_stop_slave_timeout | 31536000 |
| slave_net_timeout | 60 |
| thread_pool_idle_timeout | 60 |
| wait_timeout | 14 |
+-----------------------------+----------+
14 rows in set (0.00 sec)
上面是測試互動輸入的方式,
wait_timeout =14
interactive_timeout=21
可以看到session級別的wait_timeout的初始化使用了interactive_timeout
當超過了21s後,再執行命令連線已經被幹掉了
綜上:
針對client其實真正生效的是session級別的wait_timeout,空閒連線(互動和非互動),
超過其session級別的wait_timeout時間就會被回收掉:
虛擬碼:
if (client_connection is interactive) then
session wait_timeout= global interactive_timeout
else if(client_connection is noninteractive ) then
session wait_timeout= global wait_timeout
end if
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/20625855/viewspace-1717890/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【Mysql】MySQL中interactive_timeout和wait_timeout的區別MySqlAI
- 【MySQL】淺析interactive_timeout和wait_timeoutMySqlAI
- MySQL之wait_timeout和interactive_timeout引數MySqlAI
- Mysql引數解釋---wait_timeout、interactive_timeoutMySqlAI
- MySQL:引數wait_timeout和interactive_timeout以及空閒超時的實現MySqlAI
- interactive_timeout和wait_timeout引數區別和設定策略AI
- MySQL連線超時相關的兩個引數interactive_timeout和wait_timeout的區別和解釋MySqlAI
- MySQL中wait_timeout的坑MySqlAI
- mysql interactive_timeout 設定不當一例MySql
- Python 操作 mysql 資料庫,wait_timeout 後報什麼錯誤PythonMySql資料庫AI
- mysql的order by和group byMySql
- Springboot 連線池wait_timeout超時設定Spring BootAI
- mysql的mysql.event和information_schema.eventsMySqlORM
- MYSQL和SQL的區別MySql
- mysql中!=和is not的區別MySql
- mysql中“ ‘ “和 “ ` “的區別MySql
- MySQL和Oracle的區別MySqlOracle
- MySQL 裡的 find_in_set () 和 in () 和 likeMySql
- 安裝mysql和mysql workbenchMySql
- MySQL中is not null和!=null和<>null的區別MySqlNull
- MySQL中的事務和MVCCMySqlMVC
- mysql中\G和\g的作用MySql
- mysql索引的使用和優化MySql索引優化
- MySQL中的redo log和checkpointMySql
- Mysql的redolog和binlogMySql
- MySQL 和 B 樹的那些事MySql
- 【轉】mysql 和 redis的區別MySqlRedis
- MySQL中ENMU和SET的使用MySql
- mysql的分割槽和分表MySql
- MySQL的下載和安裝MySql
- mysql 下的提示和含義MySql
- mysql的啟動和關閉MySql
- oracle和mysql的行列轉換OracleMySql
- PHP和MySQLPHPMySql
- 【MySQL】MySQL備份和恢復MySql
- mysql_safe和mysql_multiMySql
- mysql的安裝和簡單的操作MySql
- PHP中MySQL、MySQLi和PDO的用法和區別PHPMySql