Error number: MY-012764; Symbol: ER_IB_MSG_939; SQLSTATE: HY000
Message: %s
错误说明:
ER_IB_MSG_939 为 MySQL 错误号,提示“Innodb索引中使用表空间类型不正确”。它出现在 InnoDB 类型的表上,MySQL无法查询该表,因为MySQL认为存在一个索引的表空间的类型不一致的索引。
MySQL用户可能会遇到这个错误,当他们试图创建或更新一个InnoDB表时。例如,当一个新索引被添加到现有的InnoDB表中,即使索引是最适当的类型,只要当前存在一个表空间类型不正确的索引,ER_IB_MSG_939错误将会得到。
解决方法:
为了解决这种错误,用户首先需要检查所有存在的索引,以查看哪些使用了不正确的类型,与创建表时定义的类型不一致。这些索引需要被改为正确的类型,然后在MySQL数据库中重新检查表。
如果在检查过程中无法找到错误的索引,则建议用户使用命令行工具将表的定义导出到文件中,然后分析语法,确保它们是正确的。接下来,重新创建表,并将记录导入表中。之后,再次使用检查表命令,确保表中没有任何不正确的索引,如果有,则必须更正错误的索引,然后再次检查表。