备份在 Hyper-V 中运行的 MySQL 数据库服务器的最佳方法

备份在 Hyper-V 中运行的 MySQL 数据库服务器的最佳方法

我们在 Windows 2008 R2 VM 上运行生产 MySQL v5.5 数据库服务器。我们目前只是每天执行数据库的 mysqldump,然后备份它们。我们的备份解决方案 (Veeam) 支持 Hyper-V 并使用 VSS 创建 VM 的一致快照。这是一种好的备份方法吗?这是最好的备份方法吗?如果我们必须恢复此 VM,我们会遇到任何数据库损坏吗?我们是否应该继续每天执行 mysqldump 并单独备份它们?谢谢!

答案1

备份不仅是一种灾难恢复解决方案,它还可以作为存档。

对于灾难恢复部分,您可以使用虚拟机的快照。但想象一下,您只想从数据库中恢复单个表或单个记录,或者您想查看数据库中的记录随时间的变化情况。在这种情况下,使用一个充满数据库转储的目录可能会更好。

因此,我建议不仅要依赖快照,还要将转储保存在某处。

答案2

Hyper-V 会对虚拟机进行 VSS 快照,如果这些操作系统安装了集成服务,它将通知内部操作系统也准备进行快照。然后,该虚拟机操作系统会通知所有具有 VSS 提供程序的应用程序刷新到磁盘(称为静止)。因此,很酷的是,VSS 通知从 Hyper-V->VM->VM 中的应用程序向下传递。糟糕的是,它只对支持 VSS 的应用程序有帮助。VSS 自 2003 年以来一直存在于 Windows Server 中,并在 Microsoft 产品上得到广泛支持,但在第三方产品上却不太受支持。

因此,MySQL 似乎没有原生的 VSS 支持,但有一个第三方工具根据这个

如果是我,我会将 MySQL 设置为将数据库和日志备份到本地磁盘(频繁备份,甚至可能每 15 分钟备份一次,具体取决于您的恢复点目标),并仍然执行 Hyper-V 快照以捕获这些文件。在恢复场景中,如果您有任何数据丢失,您可以从这些数据中恢复,而不是只有在线(打开文件)MySQL 数据库和日志。请注意,我不是 MySQL 专家 :)

相关内容