错误 1034(HY000):表“mytable”的密钥文件不正确;尝试修复它

错误 1034(HY000):表“mytable”的密钥文件不正确;尝试修复它

将 mysql 从 5.5 升级到 5.7 后,压缩的 innodb 数据库似乎损坏了。我按照此方法操作邮政创建一个新的数据库/表,删除表空间,复制旧的.ibd 文件,然后导入表空间,ALTER TABLE mytable IMPORT TABLESPACE但出现与该帖子相同的错误:

ERROR 1034 (HY000): Incorrect key file for table 'mytable'; try to repair it

请注意,此错误不是由磁盘空间不足引起的。

答案1

PRIMARY KEY (title(255))

哎呀!从技术上讲,这意味着的前 255 个字符title是唯一的。这可能不是你想要的。我认为应该禁止在 UNIQUE 和 PRIMARY KEY 前面添加前缀。

猜测前缀是导致问题的原因。

5.7 可让您删除(255)和(大概)正常工作。试试看。(5.5 有索引限制,导致前缀。)

相关内容