MySQL InnoDB不可恢复的崩溃

每当我启动MySQL服务器5.1.33或5.1.40(开发人员构build),并尝试从一个表读取服务器崩溃与日志文件中的这条消息:

InnoDB:错误:(1500)无法从索引(PRIMARY)读取MAX(userFK)autoinc值。

我已经升级到5.1.40每个http://bugs.mysql.com/bug.php?id=44030,但我仍然无法从表中读取,所以我无法恢复它。 我已经用innodb_force_recovery = 1启动了服务器,但是这也没有帮助,REPAIR,CHECK或者SELECT或者任何其他的命令都会使服务器崩溃。

我该如何修复表格,使其再次可读?

我认为你要么从备份中恢复,要么付给Oracle很多钱。 抱歉。

看看innodb工具 。 也许你会有一些运气与你的数据。

这看起来像你需要从最新的备份中恢复。

根据数据如何被破坏,你可以用where子句select它。 你可能永远不会从损坏的表中恢复所有的数据,但你可能能够逐行备份它。