MySQL损坏page问题分析

  • 时间:
  • 浏览:0

还要注意的是,当设置参数innodb_force_recovery大于0后,还还要对表进行select、create、drop操作,但insert、update或者delete类式操作是不允许的。或者innodb_force_recovery设置为4或更高,则将InnoDB置于只读模式。

避免方法 是关闭binlog:

错误日志显示:

或者表数据中的损坏阻止您转储整个表内容,则具有ORDER BY primary_key DESC子句的查询然还还要够在损坏的帕累托图后来 转储表的一帕累托图。

或者您知道给定的表导致 回滚崩溃,则还还要删除它。或者遇到由絮状导入失败或ALTER TABLE导致 的失控回滚,则还还要终止mysqld多线程 并将innodb_force_recovery设置为3以使数据库不会回滚,或者DROP导致 失控回滚的表。

innodb_force_recovery还还要设置为6个非零值:1~6,大的数字蕴藏了前面所有小数字的所有功能,具体状态如下:

导致 page损坏的导致

或者启动InnoDB还要高innodb_force_recovery值,则或者地处或者导致 繁复查询(蕴藏WHERE,ORDER BY或有些子句的查询)失败的数据形态损坏。在一种生活 状态下,您或者不到运行基本的SELECT * FROM t查询。

注意:在执行insert into xxx select * from xxx;或者会引发难题:

您还还要从表中进行SELECT以转储它们。或者innodb_force_recovery值为3或更小,您还还要DROP或CREATE表。 Innodb_force_recovery值也大于3,支持DROP TABLE,最高可达MySQL 5.7.17。从MySQL 5.7.18刚开始了了,不允许在innodb_force_recovery值大于4的状态下使用DROP TABLE。