手机看片精品高清国产日韩,色先锋资源综合网,国产哺乳奶水91在线播放,乱伦小说亚洲色图欧洲电影

幫助中心 >  技術知識庫 >  云服務器 >  服務器教程 >  General error: 2006 MySQL server has gone away錯誤

General error: 2006 MySQL server has gone away錯誤

2016-06-06 20:02:06 12556

如果我們單看mysql提示MySQL server has gone away就是由于種種原因導致mysql當機了,導致MySQL server has gone away的原因有很多種,下面我來總結一下.

我自己人的經歷:先簡單介紹一下這個新手卡錄入后臺,這個后臺是提供給產品人員使用,可以向某個游戲的某個特定分區批量錄入新手卡信息,方便玩家獲取,后臺設置的一次性最大錄入量為500.

先看日志吧,報錯的內容和日志的相同:

Error: SQLSTATE[HY000]: General error: 2006 MySQL server has gone away

這個錯誤信息很好的描述了是數據庫超時引起的,以前聽前輩說過,應該是wait_timeout環境變量設置的有問題,可是查看后,發現wait_timeout設的好高啊,為28800,不應該出問題啊,無解.

回來后,訴說,頭笑而不語,讓我只看,別說話,代碼如下:

  1. show global variables; --phpfensi.com

  2. set global wait_timeout = 120; 

總結解決了,但很多MySQL server has gone away都與此問題無關了,都有和max_allowed_packet有關了,導入數據庫的時候 SQLyog 報錯了.

Error Code: 2006 – MySQL server has gone away

搜了下,說是max_allowed_packet,MySQL的一個參數,設置的值不夠大,那我改下就行了 嘿嘿.

  1. In Windows: 

  2. In the MySQL server installation directory, 

  3. in my.ini file, add the following line under [mysqld] in SERVER SECTION

  4. max_allowed_packet = 16M 

  5. In Linux: 

  6. Copy the my-xxx.cnf file from /usr/share/mysql to /etc as my.cnf 

  7. xxx can be small, medium, large, huge … depending on the requirement. 

  8. --代碼如下 

  9. $ cp /usr/share/mysql/my-xxx.cnf /etc/my.cnf 

  10. In the my.cnf file, change the default 

  11. max_allowed_packet = 1M 

  12. to 

  13. max_allowed_packet = 16M 

  14. Save the file and restart MySQL server. 

今天導入.sql文件時出現了Error Code:2006 – MySQL server has gone away錯誤,原來是導入的sql文件大于系統默認的max_allowed_packet的值,查了很多修改配置文件的,但是沒有找到my.cfg文件,修改其他文件不管用,所以直接使用sql語句來修改,代碼如下:

SET GLOBAL  max_allowed_packet=67108864;

就可以了,不是max_allowed_packet越大越好,大家可根據自己人情況來設置.


提交成功!非常感謝您的反饋,我們會繼續努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: