請注意不一樣的innodb引擎

有一個客戶用的雙機熱備環境,kkmail這個數據庫文件夾放在存儲裏面,然後兩臺服務器都做軟鏈接過去。

昨天幫客戶升級,由於升級的時候會刪除kkmail目錄、備份還原數據庫,造成軟鏈接被刪除了。發現後,就把軟鏈接重新設置了下,以爲這樣升級就完全成功了。

但是在做雙機熱備切換測試,發現切換到備用服務器後,用不了。排查發現是有些表用了innodb引擎,單把數據庫文件夾放到存儲裏面沒用。
還要把ibdata1、ib_logfile0、ib_logfile1這幾個文件也放進去。也就是說他們是一套的。




題外話1:開始犯了低級錯誤,我們把整個mysql所有數據庫的目錄都放在存儲裏面,造成數據庫損壞啓動不了,還好有備份。後來想了下,肯定不能放,因爲裏面有mysql等自帶數據庫。


題外話2:如果mysql總是啓動不起來,總是提示var目錄下lock文件存在(刪除後也沒用)、和生成不了pid和sock文件的時候。
(1)可以考慮到數據庫損壞了,這時候一定要想到是不是數據庫損壞了(我把kkmail數據庫文件刪除,然後刪除ibdata1、ib_logfile0、ib_logfile1後,再重啓mysql後好了)
(2)可以考慮權限問題,mysql對權限很敏感。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章