首頁  >  文章  >  後端開發  >  mysql.connect_timeout PHP 選項是否導致 MySQL 伺服器連線在 60 秒後逾時?

mysql.connect_timeout PHP 選項是否導致 MySQL 伺服器連線在 60 秒後逾時?

Barbara Streisand
Barbara Streisand原創
2024-10-18 22:10:30340瀏覽

Is the mysql.connect_timeout PHP Option Causing MySQL Server Connection Timeouts After 60 Seconds?

MySQL Server 斷開連接問題:超時後60 秒斷開連接

問題:

我發現一個以前運行正常的SQL 查詢現在在60 秒後逾時並拋出錯誤。儘管查詢很慢,但它是作為一項夜間作業的一部分運行的,因此它本身並不是問題(所以請不要建議我優化它)。

透過從 PHP 執行 "select SLEEP(120);",我可以一直重現錯誤,如下所示。然而,從 MySQL 用戶端執行相同語句是成功的(回傳 0)。我嘗試調整 wait_timeout(設定為 28800),但沒有成功。我還重新啟動了資料庫伺服器和電腦本身。

我總是超時剛好 60 秒,這讓我認為它可能是設定問題,而不是資源受限問題。

我正在運行:

  • Windows 伺服器2003
  • MySQL 5.1.36-community
  • PHP 5.3

以下是我的測試程式碼、輸出和SHOW VARIABLES 的結果。

答案:

php 選項 mysql.connect_timeout 是導致此問題的原因。它不僅用於連接逾時,也用於等待來自伺服器的第一個回應。你可以這樣增加它:

以上是mysql.connect_timeout PHP 選項是否導致 MySQL 伺服器連線在 60 秒後逾時?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn