使用VM备份MySQL数据库

Pau*_*aul 5 mysql virtual-machine

使用虚拟机备份作为恢复 MySQL 数据库的方法是否正确?这样做有什么危险吗?我自己的感觉是,虚拟机备份/快照位于操作系统而不是数据库级别,因此可能无法以正确的方式备份数据库。有人对此有什么建议吗?

Jer*_*yth 3

只要您执行以下两件事之一就可以了:

  • 通过关闭数据库或FLUSH TABLES WITH READ LOCK在执行快照时使用类似的方法来确保表的一致性(您可能不想这样做
  • 对在快照期间可能发生更改的所有表使用事务安全存储引擎,例如InnoDB (默认),并依赖其从看似崩溃的状态(即正在运行的副本)中恢复的能力服务器。

一旦您意识到拍摄正在运行的虚拟机的快照并在另一台计算机上启动快照看起来就像拔掉该服务器的插头并重新启动它,您的选择就会变得相对简单:确保系统可以从拔掉插头中恢复,并且它可以从虚拟机快照备份中恢复。