mysql报错Ignoring the redo log due to missing MLOG_CHECKPOINT between
mysql报错Ignoring the redo log due to missing MLOG_CHECKPOINT between
mysql版本:5.7.19
系统版本:centos7.3
由于周未公司断电,跑在vmware虚拟机上的mysql挂掉,无法重启
启动mysql的时候,error log的信息如下
--15T11::46.562061+: [ERROR] InnoDB: Ignoring the redo log due to missing MLOG_CHECKPOINT between the checkpoint and the end .
--15T11::46.562090+: [ERROR] InnoDB: Plugin initialization aborted with error Generic error
--15T11::47.062885+: [ERROR] Plugin 'InnoDB' init function returned error.
--15T11::47.062936+: [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
--15T11::47.062945+: [ERROR] Failed to initialize plugins.
--15T11::47.062951+: [ERROR] Aborting --15T11::47.062962+: [Note] Binlog end
在redo log里找不到checkpoint点,innodb引擎启动失败
解决办法有两个
第一个
设置innodb_force_recovery=6,然后启动mysql,能够顺利启动mysql
error log信息如下
--15T12::25.235397+: [Warning] 'db' entry 'sys mysql.sys@localhost' ignored in --skip-name-resolve mode.
--15T12::25.235408+: [Warning] 'proxies_priv' entry '@ root@localhost' ignored in --skip-name-resolve mode.
--15T12::25.235540+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`time_zone_leap_second` in the cache. Attempting to load the tablespace with space id
--15T12::25.256456+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`time_zone_name` in the cache. Attempting to load the tablespace with space id
--15T12::25.258414+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`time_zone` in the cache. Attempting to load the tablespace with space id
--15T12::25.263576+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`time_zone_transition_type` in the cache. Attempting to load the tablespace with space id
--15T12::25.267569+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`time_zone_transition` in the cache. Attempting to load the tablespace with space id
--15T12::25.272648+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`servers` in the cache. Attempting to load the tablespace with space id
--15T12::25.276466+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`slave_master_info` in the cache. Attempting to load the tablespace with space id
--15T12::25.280225+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`slave_relay_log_info` in the cache. Attempting to load the tablespace with space id
--15T12::25.286619+: [ERROR] InnoDB: Failed to find tablespace for table `mysql`.`slave_worker_info` in the cache. Attempting to load the tablespace with space id
--15T12::25.292450+: [ERROR] Error writing master configuration.
--15T12::25.292468+: [ERROR] Error reading master configuration.
--15T12::25.294535+: [Warning] Recovery from master pos and file mysql-bin. for channel ''. Previous relay log pos and relay log file had been set to , /data/mysql/mysql3306/logs/mysql-relay. respectively.
--15T12::25.294643+: [ERROR] Error writing relay log configuration.
--15T12::25.294656+: [ERROR] Error reading relay log configuration.
--15T12::25.294983+: [ERROR] Slave: Failed to initialize the master info structure for channel ''; its record may still be present in 'mysql.slave_master_info' table, consider deleting it.
--15T12::25.294996+: [ERROR] Failed to create or recover replication info repositories.
--15T12::25.295000+: [Note] Some of the channels are not created/initialized properly. Check for additional messages above. You will not be able to start replication on those channels until the issue is resolved and the server restarted.
由于损坏的这个库是从库,所以显示无法初始化master info表
由于mysql库里有几个表都显示找不到表空间,那么会存在丢失数据的风险
第二个
按照网上说的,把实例的所有ib_logfilex文件删除,再启动mysql,能够顺利启动
参照:http://blog.csdn.net/weiwangsisoftstone/article/details/52954228
error log信息如下
--15T11::17.694175+: [Note] Server socket created on IP: '::'.
--15T11::17.696000+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.696018+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.696287+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.696300+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.696535+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.696551+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.697469+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.697485+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.697809+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.697821+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.698049+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.698061+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.700092+: [Warning] 'user' entry 'root@localhost' ignored in --skip-name-resolve mode.
--15T11::17.700140+: [Warning] 'user' entry 'mysql.session@localhost' ignored in --skip-name-resolve mode.
--15T11::17.700153+: [Warning] 'user' entry 'mysql.sys@localhost' ignored in --skip-name-resolve mode.
--15T11::17.701714+: [Warning] 'db' entry 'performance_schema mysql.session@localhost' ignored in --skip-name-resolve mode.
--15T11::17.701727+: [Warning] 'db' entry 'sys mysql.sys@localhost' ignored in --skip-name-resolve mode.
--15T11::17.701881+: [Warning] 'proxies_priv' entry '@ root@localhost' ignored in --skip-name-resolve mode.
--15T11::17.702485+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.702502+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.702718+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.702741+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
--15T11::17.702962+: [ERROR] InnoDB: Page [page id: space=, page number=] log sequence number is in the future! Current system log sequence number .
--15T11::17.702974+: [ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDB log files. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.
按照报错信息,数据库也是无法回滚到之前一致性状态,有丢数据风险
总结
一般来说,mysql有坏块或者服务器异常关机
解决方法
1、在my.cnf里设置innodb_force_recovery=1 ,如果1不行改成2,最大是6 ,然后启动mysql, 将数据dump出来再 导入到新的实例
2、根据主键id ,逐个区间去导出,用mysqldump -w where条件,再导入到新实例
innodb_force_recovery影响整个innodb存储引擎的恢复状况,该值默认为0,表示当需要恢复时,需要执行所有的恢复操作,当不能进行有效恢复时,如数据页发生了corruption,mysql数据库可能宕机,并把错误写入错误日志中。
innodb_force_recovery=6表示mysql数据库已经有比较严重的损坏,就算把数据dump出来也不能保证dump出来的数据是没有问题的
最后建议选择第一个解决办法修改innodb_force_recovery的方法来恢复mysql,而不要选择第二个办法
mysql报错Ignoring the redo log due to missing MLOG_CHECKPOINT between的更多相关文章
- springboot报错Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean
springboot项目在启动时需要把servlet容器编译进去,这时候如果你的maven依赖里面没有配置jetty或者tomcat相关依赖就会报错. 解决方法: jetty添加 <depend ...
- Spring boot 报错 Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean.
在实际开发中修改别人的代码,发现了这个报错,后来发现是因为pom.xml里面 只要将注释掉的部分注释掉就好了.
- MySQL启动报错Failed to open log (file 'D:\phpStudy\PHPTutorial\MySQL\data\mysql_bin.000045', errno 2)
MySQL报错 191105 9:39:07 [Note] Plugin 'FEDERATED' is disabled. 191105 9:39:07 InnoDB: The InnoDB memo ...
- 安装mysql报错
原文链接:https://blog.csdn.net/bao19901210/article/details/51917641 二进制安装 1.添加mysql组和mysql用户,用于设置mysql安装 ...
- xtrabackup备份MySQL报错:InnoDB: Error number 24 means 'Too many open files'
xtrabackup备份MySQL报错:InnoDB: Error number 24 means 'Too many open files' 1.使用xtrabackup备份MySQL时出现如下报错 ...
- mysql报错Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage
mysql报错Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage 在执行cr ...
- mysql报错排查总结
mysql报错: [root@zabbix ~]# mysql ERROR 2002 (HY000): Can't connect to local MySQL server through sock ...
- PHP连接MySQL报错:SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket 'MySQL' (2)
如下所示,PHP连接MySQL报错: SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket 'MySQL' ...
- Asp.Net连接Mysql报错Out of sync with server
Asp.Net连接Mysql报错Out of sync with server 原因:程序引用的MySql.Data.dll版本高于服务器版本 解决:下载一个低版本的MySql.Data.dll,项目 ...
随机推荐
- maven project 报错解决方法
1 maven 在添加包后出错,project 处有红线的解决办法 Maven默认会使用本地缓存的库来编译工程,对于上次下载失败的库,maven会在~/.m2/repository/<group ...
- 谈谈tmpdir与innodb_tmpdir的区别和用处
[背景] innodb_tmpdir是在innodb online ddl中提到的一个参数:大致的意思是innodb在做online-ddl的时候会向临时目录写入“临时排序文件” 而这些文件的大小基本 ...
- macOS 下 PHPStorm + Xdebug 调试 Docker 环境中的代码
0x00 描述 宿主机是 mac mini,构建的项目在 docker 中,所以需要在 PHPStorm 上配置 Xdebug 进行远程代码调试. 0x01 环境 宿主机:macOS High Sie ...
- TCP 协议简析
TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的.可靠的.基于字节流的通信协议,数据在传输前要建立连接,传输完毕后还要断开连接.它是个超级麻烦的协议, ...
- 如何用cmd命令递归文件夹中的所有特定文件,拷贝到另一个文件夹中
现在有一个文件夹,里面有很多子文件夹,每个子文件夹中有很多不同类型的图片,现在想将其所有.png图片整理出来,一开始我是手动拷贝的,拷贝了几个图片后,突然想能不能让计算机来自动完成此项功能,经过一番尝 ...
- [转]tableExport.js 导出excel 如果有负数或是空值 导出前面会自动加上单引号
原文地址:https://blog.csdn.net/private66/article/details/88718285 tableExport.js 导出excel 如果有负数或是空值 导出前 ...
- Android 查看蓝牙hci日志
最近在调试android连接ble设备,需要查看hci日志.记录一下方法. 1. 开发者选项->启用蓝牙HCI信息收集日志. 2. android 8版本,默认位置/data/misc/blue ...
- ROS常用命令汇总
ROS系统也是通过命令行操作,总结了下平时工作中使用的命令工具,以后使用多会陆续添加. 查看ROS_PACKAGE_PATH环境变量 $ echo $ROS_PACKAGE_PATH /home/sa ...
- Houdini 过程化地形系统(二):基于UE4的FC5植被系统(1)
背景 通过之前的几篇分析实践,已经基本打通了UE4的Houdini植被管线部分,并对Far Cry5(简称FC5)的植被系统的需求做了整理,在接下来的几节中,会关注于如何使用Houdini基于UE4来 ...
- 一个自定义python分布式专用爬虫框架。支持断点爬取和确保消息100%不丢失,哪怕是在爬取进行中随意关停和随意对电脑断电。
0.此框架只能用于爬虫,由框架来调度url请求,必须按照此方式开发,没有做到类似celery的通用分布式功能,也不方便测试.可以使用另外一个,基于函数式编程的,调度一切函数的分布式框架,做到了兼容任何 ...