本文主要是介绍InnoDB: Database page corruption on disk or a failed,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
InnoDB: Database page corruption on disk or a failed
InnoDB: file read of page 5234.
InnoDB: You may have to recover from a backup.
文件损坏
mysql的参数innodb_force_recovery可以在启动时忽略一些检查项,于是在配置文件中设置innodb_force_recovery=6,启动没问题,不会再重启了,使用mysqldump导出了数据。
该参数各值含义如下:
默认为0,表示当需要恢复时执行所有的恢复操作(即校验数据页/purge undo/insert buffer merge/rolling back&forward).当不能进行有效的恢复操作时,mysql有可能无法启动,并记录下错误日志.
innodb_force_recovery可以设置为0-6,大的数字包含前面所有数字的影响.
当设置参数值大于0后,可以对表进行select,create,drop操作,但insert,update或者delete这类操作是不允许的.
1.(SRV_FORCE_IGNORE_CORRUPT): 忽略检查到的corrupt页.
2.(SRV_FORCE_NO_BACKGROUND): 阻止主线程的运行,如主线程需要执行full purge操作,会导致crash.
3.(SRV_FORCE_NO_TRX_UNDO): 不执行事务回滚操作.
4.(SRV_FORCE_NO_IBUF_MERGE): 不执行插入缓冲的合并操作.
5.(SRV_FORCE_NO_UNDO_LOG_SCAN): 不查看重做日志,InnoDB存储引擎会将未提交的事务视为已提交.
6.(SRV_FORCE_NO_LOG_REDO): 不执行前滚的操作.
这篇关于InnoDB: Database page corruption on disk or a failed的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!