Error number: MY-012545; Symbol: ER_IB_MSG_720; SQLSTATE: HY000
Message: Log block %lu at lsn %llu has valid header, but checksum field contains %lu, should be %lu.
错误说明:
MySQL的ER_IB_MSG_720错误是由InnoDB插件发出的一种表示I/O操作(对快照文件的检查等)失败的通用消息。 它表明系统内部错误,例如文件已损坏,盘片错误或者文件无法访问(打不开)。 此通用消息没有指示哪个文件有问题,这也是为什么ER_IB_MSG_720是一种非常悬而未定的错误。
最常见的原因是非法磁盘设备(损坏的快照文件)或者数据字典,或者未被正确断点的.ibd文件,而试图将已损坏的文件加入到存储引擎中时,会造成损坏,并造成ER_IB_MSG_720错误。 一些可能的原因还包括:插件系统内部错误,磁盘的I/O错误,或者MySQL数据库文件的无效写入。
解决方法:
一个容易的首先步骤,尝试解决这个问题是重新启动MySQL服务器,可能运行一系列故障排除措施来检查磁盘空间,并修复逻辑磁盘损坏,还可以确认任何文件系统损坏,检查磁盘上文件系统是否仍然完整有效。 如果重新启动MySQL服务器无法解决ER_IB_MSG_720,则需要搜索MySQL日志中的相关错误消息,以查找特定的文件,它可能会引起警告或错误的问题。 一旦确认特定的文件是罪魁祸首,就可以尝试从备份中恢复它,或者将其删除,并重新创建它。 此外,还可以尝试更换计算机磁盘或文件系统,以减少I/O错误发生的几率。