MySQL server has gone away的問題解決
一、可能是mysql連接超時(shí)
原因:mysql長(zhǎng)連接時(shí),很長(zhǎng)時(shí)間沒有新的請(qǐng)求發(fā)起到達(dá)服務(wù)端,當(dāng)這個(gè)時(shí)間超過配置的最大超時(shí)時(shí)間時(shí),mysql就會(huì)強(qiáng)行關(guān)閉鏈接。此后再通過這個(gè)connection發(fā)起查詢的時(shí)候,就會(huì)報(bào)錯(cuò)server has gone away。
解決辦法:可以將timeout時(shí)間設(shè)置長(zhǎng)一點(diǎn):
set global wait_timeout =3600 ; //非交互式鏈接
set global interactive_timeout=3600 ; //交互式鏈接
但是這樣會(huì)長(zhǎng)時(shí)間占用mysql鏈接,消耗資源。
二、可能是發(fā)送的SQL語(yǔ)句太長(zhǎng)
原因:mysql服務(wù)器端和客戶端在一次傳送數(shù)據(jù)包的過程中,數(shù)據(jù)包的大小大于max_allowed_packet設(shè)置的值。
解決辦法:可以將max_allowed_packet值設(shè)置大一點(diǎn),set global max_allowed_packet=3600。
三、可能MySQL 服務(wù)宕了
可以查看mysql的運(yùn)行時(shí)長(zhǎng):show global status like 'uptime'; 。來(lái)判斷是否屬于這個(gè)原因引起的。
uptime很長(zhǎng)說明mysql運(yùn)行很長(zhǎng)時(shí)間了,排除mysql服務(wù)宕機(jī)的可能。
擴(kuò)展:
應(yīng)用程序長(zhǎng)時(shí)間的執(zhí)行批量的MYSQL語(yǔ)句。執(zhí)行一個(gè)SQL,但SQL語(yǔ)句過大或者語(yǔ)句中含有BLOB或者longblob字段。比如,圖片數(shù)據(jù)的處理。都容易引起MySQL server has gone away。
解決MySQL server has gone away :
1、應(yīng)用程序長(zhǎng)時(shí)間的執(zhí)行批量的MYSQL語(yǔ)句。最常見的就是采集或者新舊數(shù)據(jù)轉(zhuǎn)化?;蛘唛L(zhǎng)時(shí)間閑置數(shù)據(jù)庫(kù)連接
解決方案:
在my.cnf/my.ini文件中添加或者修改以下兩個(gè)變量:
wait_timeout=2880000 interactive_timeout = 2880000
如果不能修改my.cnf/my.ini,則可以在連接數(shù)據(jù)庫(kù)的時(shí)候設(shè)置CLIENT_INTERACTIVE,比如:
sql = "set interactive_timeout=24*3600"; mysql_real_query(...)
2、執(zhí)行一個(gè)SQL,但SQL語(yǔ)句過大或者語(yǔ)句中含有BLOB或者longblob字段。比如,圖片數(shù)據(jù)的處理
解決方案:
在my.cnf/my.ini文件中添加或者修改以下變量:
max_allowed_packet = 10M(也可以設(shè)置自己需要的大小)
max_allowed_packet 參數(shù)的作用是,用來(lái)控制其通信緩沖區(qū)的最大長(zhǎng)度。
到此這篇關(guān)于MySQL server has gone away的問題解決的文章就介紹到這了,更多相關(guān)MySQL server has gone away內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL開啟慢查詢?nèi)罩緇og-slow-queries的方法
MySQL中提供了一個(gè)慢查詢的日志記錄功能,可以把查詢SQL語(yǔ)句時(shí)間大于多少秒的語(yǔ)句寫入慢查詢?nèi)罩荆粘>S護(hù)中可以通過慢查詢?nèi)罩镜挠涗浶畔⒖焖贉?zhǔn)確地判斷問題所在2016-05-05
mysql 觸發(fā)器創(chuàng)建與使用方法示例
這篇文章主要介紹了mysql 觸發(fā)器創(chuàng)建與使用方法,結(jié)合實(shí)例形式分析了mysql 觸發(fā)器基本概念、原理、創(chuàng)建、使用方法及操作注意事項(xiàng),需要的朋友可以參考下2020-05-05
mysql 5.7.17 安裝教程 附MySQL服務(wù)無(wú)法啟動(dòng)的解決方法
這篇文章主要為大家詳細(xì)介紹了mysql 5.7.17安裝教程,并且為大家分享了MySQL服務(wù)無(wú)法啟動(dòng)的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03

