2013-03-19 67 views
1

,而我嘗試連接到PHP服務的柔性我有這樣的錯誤。(我給root,密碼,數據庫名稱一切正常)PHP服務設置錯誤

Warning: mysqli_connect() [<a href='function.mysqli-connect'>function.mysqli-connect</a>]: MySQL server has gone away in C:\wamp\www\harisample\services\SamplePhp.php on line 54 
+0

你從哪裏得到錯誤?在Flex中?或從他的服務器? – JeffryHouser 2013-03-19 23:17:07

回答

0

當您收到MySQL server has gone away錯誤,這意味着發生以下情況之一:

  1. 客戶端無法發送問題到服務器。
  2. 客戶端在寫入服務器時未發生錯誤,但其 未獲得問題的完整答案(或任何答案)。
  3. 您試圖在關閉與服務器的連接後運行查詢。這表示應該糾正的應用程序中的邏輯錯誤。
  4. 運行在不同主機上的客戶端應用程序沒有必要的特權來從該主機連接到MySQL服務器。
  5. 的MYSQL_OPT_READ_TIMEOUT或MYSQL_OPT_WRITE_TIMEOUT變量太低
  6. 您已遇到在服務器側和客戶機中的自動重新連接超時被禁用(在MYSQL結構再連接標誌等於0)。
  7. 在發出命令之前,您正在使用Windows客戶端,並且服務器已經斷開連接(可能是因爲wait_timeout已過期)。

修復此問題可能很簡單,但前提是您必須具有對服務器的完全root權限。

  1. 您可以通過在啓動mysqld時設置wait_timeout變量來更改時間限制。見this link for more information
  2. 如果您有一個腳本,您只需再次發出查詢以便客戶端執行自動重新連接。這假定您在啓用的客戶端中啓用了自動重新連接(這是mysql命令行客戶端的默認設置)。