服务器崩溃后 Mysql innoDB 损坏

服务器崩溃后 Mysql innoDB 损坏

昨天我的服务器因为数据中心故障而死机了。今天恢复了,但 mysql 出现了一些问题。

首先,我的 mysql 服务器无法启动。因此,我删除了以下文件ib_logfile0ib_logfile1在 /var/lib/mysql 文件夹中(我还有旧的失败文件)。

此后我的服务器能够再次启动。但现在我在 mysql 日志文件中看到很多问题。

Sep  1 09:43:55 * mysqld: 120901  9:43:55  InnoDB: Error: page 70944 log sequence number 8 1483471899
Sep  1 09:43:55 * mysqld: InnoDB: is in the future! Current system log sequence number 5 612394935.
Sep  1 09:43:55 * mysqld: InnoDB: Your database may be corrupt or you may have copied the InnoDB
Sep  1 09:43:55 * mysqld: InnoDB: tablespace but not the InnoDB log files. See
Sep  1 09:43:55 * mysqld: InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-recovery.html

当我查看 mysql.com 上的文档时,我发现我需要使用备份来恢复我的数据库。我有一个备份,但不确定导入它的好方法是什么。或者有没有一种方法可以恢复而不必再次重新导入数据库?

如果我是对的,我需要把innodb_force_recovery在 mysql 中将其设置为 4,然后删除所有当前数据并重新导入?有没有办法在不停机的情况下做到这一点?

我还有一个从服务器正在运行。该从服务器的当前状态为:

Last_Error:中继日志读取失败:无法解析中继日志事件条目。可能的原因是:主服务器的二进制日志已损坏(您可以通过在二进制日志上运行“mysqlbinlog”来检查此情况)、从服务器的中继日志已损坏(您可以通过在中继日志上运行“mysqlbinlog”来检查此情况)、网络问题或主服务器或从服务器的 MySQL 代码中的错误。如果您想检查主服务器的二进制日志或从服务器的中继日志,您可以通过在此从服务器上发出“SHOW SLAVE STATUS”来了解它们的名称。

主服务器完成新的导入后,如何完全重置从服务器?

希望我们能够找到一个不会造成太多停机时间的解决方案。

谢谢!

相关内容