MySQL報錯Lost connection to MySQL server during query的解決方案
問題描述:
在確保網(wǎng)絡(luò)沒有問題的情況下,服務(wù)器正常運行一段時間后,數(shù)據(jù)庫拋出了異常"Lost connection to MySQL server during query",字面意思就是在查詢過程中丟失連接到MySQL服務(wù)器,拋去網(wǎng)絡(luò)原因,基本上就是數(shù)據(jù)庫配置項問題。
解決方案:
- 檢查
max_allowed_packet,max_allowed_packet指mysql服務(wù)器端和客戶端在一次傳送數(shù)據(jù)包的過程當(dāng)中最大允許的數(shù)據(jù)包大小。如果超過了設(shè)置的最大長度,則會導(dǎo)致數(shù)據(jù)讀寫失敗。
執(zhí)行以下SQL查詢配置項的值,單位是字節(jié):
show VARIABLES like '%max_allowed_packet%';
根據(jù)情況將配置項的值改為適合項目的使用大小,以64MB為例子
set global max_allowed_packet = 64*1024*1024*;
也可以通過修改配置文件,Linux修改my.cnf 文件,Windows修改 my.ini 文件,推薦通過文件修改,需要重啟mysql
[mysqld] max_allowed_packet = 64M
通過命令行修改只能臨時生效,如果下次數(shù)據(jù)庫重啟后對應(yīng)的配置就會又復(fù)原了,因為重啟的時候加載的是配置文件里面的配置項
- 檢查
wait_timeout,wait_timeout 默認是28800秒,即mysql鏈接在無操作8個小時后被自動關(guān)閉,如果服務(wù)器長時間處于空閑狀態(tài),再次訪問mysql數(shù)據(jù)庫的時候,數(shù)據(jù)庫會拒絕訪問。
執(zhí)行以下SQL查詢配置,單位毫秒
SHOW VARIABLES LIKE 'wait_timeout';
修改參數(shù)SQL
set global wait_timeout=28800 * 2;
也可以通過修改配置文件,Linux修改my.cnf 文件,Windows修改 my.ini 文件,推薦通過文件修改,需要重啟mysql
[mysqld] wait_timeout = 57600
以上就是MySQL報錯Lost connection to MySQL server during query的解決方案的詳細內(nèi)容,更多關(guān)于MySQL server during query的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Windows下MySQL服務(wù)無法停止和刪除的解決辦法
我在 Windows 操作系統(tǒng)上,使用解壓壓縮包的方式安裝 MySQL。遇到一點問題,下面通過本文給大家分享Windows下MySQL服務(wù)無法停止和刪除的解決辦法,需要的朋友可以參考下2017-02-02
完美解決mysql in條件語句只讀取一條信息問題的2種方案
使用mysql多表查詢時一個表中的某個字段作為另一表的in查詢條件,只能讀取一條信息,而直接用數(shù)字的話可以正常讀取2018-04-04
IDEA配置連接MYSQL數(shù)據(jù)庫遇到Failed這個問題解決
這篇文章主要介紹了IDEA配置連接MYSQL數(shù)據(jù)庫遇到Failed這個問題解決,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11

