MySQL Error number: MY-012108; Symbol: ER_IB_MSG_283; SQLSTATE: HY000 报错 故障修复 远程处理
文档解释
Error number: MY-012108; Symbol: ER_IB_MSG_283; SQLSTATE: HY000
Message: %s
错误说明
MY-012108 与 ER_IB_MSG_283 是MySQL服务器中利用InnoDB层管理索引及表时会用到的报错。
常见情况
MySQL服务器处理存储引擎InnoDB及层级信息时可能出现错误,结果产生ER_IB_MSG_283报错,MySQL系统会把ER_IB_MSG_283的原因,报错信息映射为MY-012108。
此报错也可能是由于InnoDB表与插件不正确造成的。如果插件之前运行良好,但是现在出现此报错,可能是插件的表出现严重的问题,包括System内部表,以及插件管理的表。
解决方法
第一步:先执行SHOW ENGINE INNODB STATUS命令,来查看当前InnoDB事务执行和锁定情况,然后检查系统是否真的挂了僵死。
第二步:如果全部都处于活跃状态,可能影响到插件的表,可以尝试先将插件的表用InnoDB硬拷贝到一个安全的区域,执行压缩表和索引等,尝试解决此错误。
第三步:如果第二步解决不了,说明服务器上可能存在更严重的问题。最好用MySQL数据库备份工具(例如innobackupex)来执行完整备份,保存在另外一台机器上。之后可以考虑重装MySQL操作系统以及处理InnoDB表结构。
最后:可以尝试重新编译InnoDB存储引擎,此举可以帮助修复InnoDB常见的内部异常,让MySQL服务器恢复正常运作。