Mysql

配置Mysql客戶端超時?

  • September 19, 2018

有沒有辦法使用 mysql 為非活動客戶端配置超時?

範例:MySQL 數據庫限制為 100 個客戶端連接,但一些客戶端不再使用該連接。我假設 MySQL 最終會斷開連接,但這是可配置的嗎?

...timeout...可以為 MySQL 實例配置許多參數。為方便起見,這裡有一些選定的參數(版本 8.x):

參考: 5.1.7 伺服器系統變數(MySQL | 文件)

互動超時

伺服器在關閉互動式連接之前等待其活動的秒數。互動式客戶端被定義為使用CLIENT_INTERACTIVE選項的客戶端mysql_real_connect()。另請參閱wait_timeout

等待超時

伺服器在關閉非互動式連接之前等待其活動的秒數。

線上程啟動時,會話 wait_timeout 值從全域wait_timeout值或從全域值初始化interactive_timeout,具體取決於客戶端的類型(由CLIENT_INTERACTIVE連接選項定義mysql_real_connect())。另請參閱interactive_timeout

回答你的問題

有沒有辦法使用 mysql 為非活動客戶端配置超時?

這取決於。在全域範圍內,您可以使用wait_timeoutMySQL 實例的參數定義超時。如果您使用函式的特定選項CLIENT_INTERACTIVEmysql_real_connect()則可以使用interactive_timeout參數。

引用自:https://dba.stackexchange.com/questions/218005