所以,MySQL 有wait_timeout和interactive_timeout. 默認情況下,我們使用 MySQL 連接wait_timeout。我想用于interactive_timeout與用戶的連接,因此超時不會干擾用戶交互。如何創建交互式連接?我當前的代碼是這樣的:$db_conn = mysqli_connect(HOSTNAME, DBUSERNAME, DBPASSWORD,DATABASE);
2 回答

慕無忌1623718
TA貢獻1744條經驗 獲得超4個贊
“服務器在關閉交互式連接之前等待其活動的秒數。交互式客戶端定義為使用 mysql_real_connect() 的 CLIENT_INTERACTIVE 選項的客戶端。

藍山帝景
TA貢獻1843條經驗 獲得超7個贊
即使您已經閱讀了文檔,也不是很清楚什么interactive_timeout
意思。
這意味著如果交互式客戶端的連接空閑時間過長,連接將自動關閉。這不會干擾任何用戶交互,因為如果他們正在運行查詢,根據定義連接不是空閑的。
wait_timeout
和的默認值為interactive_timeout
28800 秒(8 小時)。因此,客戶端除了在由于不活動而超時之前保持打開連接 8 小時外,什么都不做。這不太可能影響任何 PHP 請求,該請求在請求完成后立即關閉。
文檔中也沒有提到唯一使用的現有客戶端interactive_timeout
是mysql command-line client。
PHP、Java、ODBC、Python、Perl 等語言的所有連接器都使用常規的wait_timeout
.?我還沒有看到任何連接器可以選擇使用interactive_timeout
.?編程連接器不被視為交互式,即使它們連接的應用程序接受用戶輸入。
即使是新的 MySQL Shell 客戶端也不啟用interactive_timeout
.?wait_timeout
它依賴于其他客戶使用的傳統。
- 2 回答
- 0 關注
- 151 瀏覽
添加回答
舉報
0/150
提交
取消