美文网首页
[ERROR] InnoDB: Page [page id: s

[ERROR] InnoDB: Page [page id: s

作者: 土豆与番茄 | 来源:发表于2018-09-21 16:16 被阅读0次

    服务连接不到MySQL,MySQL日志报错,数据库损坏!

    2018-06-11T12:50:24.617098Z0[ERROR] InnoDB: Page [page id: space=42, page number=3]logsequence number14532708is in the future! Current systemlogsequence number12151645.

    2018-06-11T12:50:24.617116Z0[ERROR] InnoDB: Your database may be corrupt or you may have copied the InnoDB tablespace but not the InnoDBlogfiles. Please refer to http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html for information about forcing recovery.

    MySQL报错,数据库损坏

    解决方法1:

    1.停掉服务 

    2.将数据中的ib_logfile* ib_buffer_pool删掉 rm -rf ib_logfile* ib_buffer_pool 

    3.重新构建服务 

    4.不行的话,就要进入该服务的MySQL镜像中 kill掉MySQL的进程,在重启服务

    还有就是根据提示到MySQL页面 innodb_force_recovery = 1


    innodb_force_recovery的参数详解:


    1是跳过损坏的索引,服务正常运行 

    2是防止主线程和任何清除线程运行 

    3是崩溃恢复后,不允许事务 

    4是可能会永久损坏数据文件,准备重新构建二级索引,innodb为只读模式 

    5是不会查看撤销日志,即时事务未完成,也被视为已经提交,可能永久损坏数据文件。innodb为只读 

    6是 不恢复相关的日志,直接重新创建日志文件,可能永久损坏数据。innodb为只读


    解决方法二

    这个报错是指innodb的索引页坏了,数据应该是没有问题 首先将所有的库数据备份

    mysqldump-u root -p --all-databases >all-databases.sql

    停掉服务的pod

    清空GlusterFS服务器上的对应服务的数据备份

    重新构建该服务

    docker cp 将备份文件放到服务的MySQL容器中

    查看该服务在哪里启动后进入MySQL

    查看库

    showdatabases;

    进入库 use + 库名

    导入sql语句

    sourceall-databases.sql

    相关文章

      网友评论

          本文标题:[ERROR] InnoDB: Page [page id: s

          本文链接:https://www.haomeiwen.com/subject/amfznftx.html