问题描述
我们的Web服务器和数据库都位于Azure VM机器上。 MysqL安装在Azure VM机器上。最近,我们遇到了数据库损坏的问题。并且,当一切正常时,要求Azure从旧的日期还原备份。 Azure每天都会备份整个计算机。他们将旧备份还原到另一台计算机上。我们认为该数据库可以在那儿正常运行,因为备份是旧日期。
但是,问题仍然相同。
所以,我的问题是:
注意:还附有MysqL日志。
解决方法
整个VM备份意味着将创建一个时间点快照。对于正在运行的数据库(如MySQL),这可能意味着在备份时数据库文件处于不一致状态。需要在虚拟机上进行额外的配置才能以前后脚本的形式提供一致的备份。 Microsoft在this documentation
中详细说明了如何执行此操作但是,在您当前所处的情况下,这似乎没什么用。如InnoDB recovery documentation中所述,一个不错的选择是强制进行手动InnoDB恢复。可以here找到手动恢复的文档。