[英]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,則套接字的存在可能不是有用的檢查
為什么關機導致此錯誤?
該錯誤表明MySQL未綁定到其套接字。 它可能無法綁定到其套接字,因為似乎還有另一個進程(即沒有完全關閉的MySQL實例)仍然綁定到了它。
如何防止這種情況再次發生?
安裝UPS(不間斷電源),該UPS可提供備用電源(由電池供電),同時向服務器發出主電源故障的信號。 這使服務器有機會徹底關閉,從而使其文件不處於損壞狀態。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.