MySQL 伺服器已消失- 恰好在60 秒內
在此場景中,之前成功運行的MySQL 查詢現在遇到了60 秒後逾時,顯示錯誤「MySQL 伺服器已消失」。即使調整了 wait_timeout 變量,問題仍然存在。
分析:
超時正好發生在 60 秒,這表明是設置而不是資源限制是原因。直接從 MySQL 客戶端執行相同查詢是成功的觀察結果支持了這一點。
解決方案:
問題的根本原因是 PHP 選項 mysql.connect_timeout。此選項決定 PHP 用戶端等待 MySQL 伺服器第一次回應的時間,而不僅僅是連線逾時。
要解決此問題,請增加 mysql.connect_timeout 的值,如下所示:
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
解釋:
透過增加mysql.connect_timeout 的值,可以延長PHP 等待伺服器初始回應的時間,從而允許查詢在60 秒內完全執行-第二個視窗。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3