MySQL 强行kill后启动失败问题:[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

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

 

posted @ 2020-06-10 16:58  heaventouch  阅读(3392)  评论(0编辑  收藏  举报