当前位置:首页 > 数据库 > 正文内容

电脑断电导致mysql不可用,删除ib_logfile0和ib_logfile1恢复

root5年前 (2021-05-19)数据库1920

mysql安装在虚拟机中,公司突然断电导致mysql启动失败
查看mysql的error日志

2021-05-19T06:44:51.993300Z 0 [ERROR] InnoDB: Ignoring the redo log due to missing MLOG_CHECKPOINT between the checkpoint 2798595433 and the end 2798595072.

2021-05-19T06:44:51.993316Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error

2021-05-19T06:44:52.598369Z 0 [ERROR] Plugin 'InnoDB' init function returned error.

2021-05-19T06:44:52.598399Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

2021-05-19T06:44:52.598405Z 0 [ERROR] Failed to initialize builtin plugins


主要的原因是mysql会在最新的checkpoint完成后都会在redo log写一个一字节的MLOG_CHECKPOINT 标记,用来标记在此之前的redo都已checkpoint完成。如果处于任何原因没有找到这个标记,那么整个redo日志文件都会被忽略。出现这个错误的话,最好是有备份进行恢复,如果没有做好备份,那只能采取非常规的启动方式,但可能造成数据丢失

删除/var/lib/mysql目录下的ib_logfile0和ib_logfile1重新启动就可以了

https://blog.csdn.net/eagle89/article/details/102704021

https://blog.csdn.net/weixin_43424368/article/details/108892963


扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://zhiqiu.top/?id=105

分享给朋友:

相关文章

如何解决 MySQL max_allowed_packet 错误

如何解决 MySQL max_allowed_packet 错误

修改global变量并退出session,重新登录,可行。修改数据库配置,未测试。方法/步骤先看看与这个错误相关的后台异常 :  Packet for query is too&n...

python操作数据库动态传递数据库名/数据库表出现的问题

python操作数据库动态传递数据库名/数据库表出现的问题

环境:py3/py2 依赖包:pymsql/MySQLdb开发某项时,j对项目进行安全检查,给出sql注入风险。修改代码是发现是sql语句进行了拼接。拼接的内容是数据库名/数据表名。然后我尝试了对数据库名和数据表名进行传参方式进行...

mysql启动失败 日志InnoDB: Ignoring the redo log due to missing MLOG_CHECKPOINT between the checkpoint 3485

mysql报错Ignoring the redo log due to missing MLOG_CHECKPOINT betweenmysql版本:5.7.33系统版本:ubuntu16.04由于电脑突然关闭,跑在VMware里面的mys...

postgresql 导入导出sql 文件

pg_dump  -h localhost -U postgres -t tablename databasename >./test.sql导出 -t 表名  psql -d test1 -U...

centos7 安装mysql

centos7 安装mysql

下载rpm包wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 安裝包仓库yum -y install * 或者yum -...

centos7 快速搭建 mysql

https://blog.csdn.net/qq_36582604/article/details/80526287...