国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

解決MySQL server has gone away

2019-09-08 23:27:03
字體:
來源:轉載
供稿:網友

今天遇到類似的情景,MySQL只是冷冷的說:MySQL server has gone away。

大概瀏覽了一下,主要可能是因為以下幾種原因:

一種可能是發送的SQL語句太長,以致超過了max_allowed_packet的大小,如果是這種原因,你只要修改my.cnf,加大max_allowed_packet的值即可。

還有一種可能是因為某些原因導致超時,比如說程序中獲取數據庫連接時采用了Singleton的做法,雖然多次連接數據庫,但其實使用的都是同一個連接,而且程序中某兩次操作數據庫的間隔時間超過了wait_timeout(SHOW STATUS能看到此設置),那么就可能出現問題。最簡單的處理方式就是把wait_timeout改大,當然你也可以在程序里時不時順手mysql_ping()一下,這樣MySQL就知道它不是一個人在戰斗。

解決MySQL server has gone away

1、應用程序(比如PHP)長時間的執行批量的MYSQL語句。最常見的就是采集或者新舊數據轉化。

解決方案:

在my.cnf文件中添加或者修改以下兩個變量:

wait_timeout=2880000
interactive_timeout = 2880000  
關于兩個變量的具體說明可以google或者看官方手冊。如果不能修改my.cnf,則可以在連接數據庫的時候設置CLIENT_INTERACTIVE,比如:

sql = "set interactive_timeout=24*3600";
mysql_real_query(...)

2、執行一個SQL,但SQL語句過大或者語句中含有BLOB或者longblob字段。比如,圖片數據的處理

解決方案:

在my.cnf文件中添加或者修改以下變量:

max_allowed_packet = 10M
(也可以設置自己需要的大小)

max_allowed_packet
參數的作用是,用來控制其通信緩沖區的最大長度。

MYSQL

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 三明市| 澄城县| 财经| 太原市| 绥滨县| 襄樊市| 清丰县| 招远市| 汾西县| 云安县| 兴化市| 新宁县| 扶风县| 永济市| 乌拉特后旗| 温泉县| 建德市| 遂昌县| 池州市| 浦北县| 新龙县| 平原县| 凤山市| 许昌市| 叙永县| 登封市| 巢湖市| 广南县| 辽阳县| 临沂市| 马龙县| 巫溪县| 河北区| 新营市| 万山特区| 江津市| 瓮安县| 长泰县| 临沂市| 元阳县| 石渠县|