0、背景
版本信息:
MySQL:5.5.47
OS:debian7
更新MySQL配置需要重啟,restart 顯示failed,於是kill -9,然后啟動
報錯:
[ERROR] Plugin 'InnoDB' init function returned error.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
1、問題及解決
由於加載InnoDB信息失敗,所以報錯並且起不來;
網上解決方法比較多(成本由低到高):
1.1、調大innodb緩存大小重啟:
innodb_buffer_pool_size=10M
1.2、刪掉 ib_logfile* 文件並重啟:
rm /MYSQL_DATA/ib_logfile*
當然更建議先 mv 到其他目錄
1.3、最不得已做法,重做MySQL:
a、先在配置文件設置 innodb_force_recovery = 1 (從1嘗試到6),在強行重啟MySQL,起來后是只讀模式,把所有庫表 dump 出來;
b、然后移除數據目錄這幾個文件:
rm /MYSQL_DATA/ibdata1*
rm /MYSQL_DATA/ib_logfile*
c、去掉配置文件 innodb_force_recovery ,再重啟發現能起來了,但是數據全空,再把dump出來的數據導回;
2、其他
大庫表這個過程會挺痛苦,不是並發導出導入的話 一般情況下系統負載(IO/CPU)不高,導出大概40~50MB/s,對比之前導入會4~5MB/s,配置好點的機器會快點;(在沒優化相關配置的情況下))
f、參考
https://stackoverflow.com/questions/26439742/getting-error-plugin-innodb-registration-as-a-storage-engine-failed-when-sta
https://blog.csdn.net/u012207077/article/details/19122495
https://www.cnblogs.com/esileme/p/7606711.html