簡體   English   中英

服務器關閉后出現MySQL錯誤2002

[英]Mysql error 2002 after server shutdown

昨天服務器已關閉,因為斷電。 之后,我嘗試連接到Mysql,但僅收到與mysql.sock相關的2002錯誤。 無論如何,我已通過以下解決方案解決了該問題:

無法通過套接字'/var/mysql/mysql.sock'連接到本地MySQL服務器(38)

sudo chmod -R 755 /var/lib/mysql/

但是我的問題是: 為什么? 為什么關機導致此錯誤? 如何防止這種情況再次發生?

首先檢查“ /var/log/mysqld.log”以查看文件/目錄權限上的消息

如果MySQL服務器意外終止,則重啟后未重置MySQL套接字

由於電源關閉,現有的mysql進程已終止,並且套接字文件未正確刪除 ,因為這不是正常關閉。 當套接字未被任何進程使用時,MySQL服務器不再嘗試驗證MySQL套接字的存在,因為檢查套接字是否存在的塊僅在套接字的另一端附加了PID時才重要。 在不干凈的重啟中,此套接字將持續存在,從而導致故障。

解決方案:我想最簡單的方法是刪除套接字檢查。 如果沒有mysqld pid,則套接字的存在可能不是有用的檢查

  1. 為什么關機導致此錯誤?

    該錯誤表明MySQL未綁定到其套接字。 它可能無法綁定到其套接字,因為似乎還有另一個進程(即沒有完全關閉的MySQL實例)仍然綁定到了它。

  2. 如何防止這種情況再次發生?

    安裝UPS(不間斷電源),該UPS可提供備用電源(由電池供電),同時向服務器發出主電源故障的信號。 這使服務器有機會徹底關閉,從而使其文件不處於損壞狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM