首頁 >資料庫 >mysql教程 >為什麼我的 MySQL 連線失敗並出現錯誤 2006:「MySQL 伺服器已消失」?

為什麼我的 MySQL 連線失敗並出現錯誤 2006:「MySQL 伺服器已消失」?

Barbara Streisand
Barbara Streisand原創
2025-01-01 01:49:09539瀏覽

Why Does My MySQL Connection Fail with Error 2006:

排除「MySQL 錯誤2006:MySQL 伺服器已消失」

當遇到臭名昭著的「MySQL 伺服器已消失」錯誤時( 2006),了解根本原因對於有效解決問題至關重要。雖然傳統觀點建議調整 wait_timeout 參數,但有一個不太為人所知但經常被忽視的罪魁禍首:max_allowed_pa​​cket 設定。

在許多情況下,max_allowed_pa​​cket 的預設值較低可能會導致此錯誤。此參數設定連線中允許的單一資料包的最大大小。如果您的資料傳輸超出此限制,連線將被終止,並會出現「MySQL 伺服器已消失」錯誤。

要修正此問題,請修改 /etc/my.cnf 檔案中的 max_allowed_pa​​cket 設定(在 [mysqld] 下)到一個更​​大的值,例如 8 或 16 兆位元組。

[mysqld]
max_allowed_packet=16M

確保建立該行,如果它不存在,必須放在 [mysqld] 下。

附加說明:

  • 可以在伺服器執行時進行此更改,但重新啟動 MySQL 守護程式後它將遺失。
  • 要永久應用該設置,請使用 SET GLOBAL max_allowed_pa​​cket=104857600(將其設定為 100MB)。
  • 在 Windows 上,確保 my.ini 或 my.cnf 檔案以 ANSI 編碼保存,而不是 UTF-8。

以上是為什麼我的 MySQL 連線失敗並出現錯誤 2006:「MySQL 伺服器已消失」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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