从 RDS 快照创建本地数据库实例

从 RDS 快照创建本地数据库实例

我正在为生产运行一个 AWS RDS 大型实例。我每天半夜都会进行 mysqldump。但是进行 mysql 转储需要的时间太长,而且网站在 mysql 转储过程中没有响应。现在我每天都会进行数据库快照,而不是进行 mysql 转储。

我的问题

还有其他方法可以将转储的数据库快照复制到本地框,以便我每天在本地进行备份吗?

答案1

我建议你去看看Percona XtraBackupinnobackupex)。确保所有数据表都是 InnoDB 引擎类型,因为如果不锁定所有表,MyISAM 将无法为您提供解决方案。

XtraBackup 能够在正在运行的数据库上进行在线备份,对性能的影响极小,锁定时间也最短。开始之前请先阅读文档。

如果您需要完整的备份/快照且不产生任何影响,您可以考虑主从安装,并在从属机器上进行这些备份。不过设置起来有点困难和痛苦。

您还可以依赖 InnoDB 崩溃恢复并拍摄 EBS 快照。然后您可以挂载此文件系统并让 InnoDB 使用它的事务日志进行恢复。但是,我不推荐这种方法。

答案2

确保获得良好备份而不干扰 MySQL 数据库操作的正常方法是使用主/从配置并从从属服务器获取备份。这甚至可以是一台机器上的两个 MySQL 实例。在这种情况下,从属服务器承受性能损失,而不是主服务器。

相关内容