1. 程式人生 > >請註意不一樣的innodb引擎

請註意不一樣的innodb引擎

不一樣的innodb引擎 mysql生成不了pid文件 mysql生成不了sock文件

有一個客戶用的雙機熱備環境,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對權限很敏感。

請註意不一樣的innodb引擎