将多个AWS EC2实例的SQL Server数据库备份到单个AWS EBS卷或S3存储桶的好方法是什么?

我有大约30个AWS实例,每个都运行SQL Server。 我想使用免费的解决scheme将它们备份到AWS EBS卷或S3存储桶中。

我正在考虑创build一个大卷,并将每个实例映射到它,直接备份到它上面,或创build本地备份,然后我可以将它们复制到中央卷上。 这是一个很好的解决scheme吗?

另一个解决scheme是设置本地备份,然后创build脚本将备份FTP到中央服务器(或者复制到S3) https://aws.amazon.com/getting-started/tutorials/backup-to-s3-cli/ )。

你最好归档到S3 IA类,因为它更便宜的存储,但可靠。

EBS快照已经将备份存储到S3,并且可以进行调度。 但是,如果在拍摄快照时写入过程中磁盘映像可能不完美。 虽然它们可能够好,但这取决于数据的重要程度。

如果您将SQL Server数据库移动到RDS中,则会为您pipe理备份。 这绝对是要考虑的事情。 我怀疑你比在EC2实例上运行要less一点控制。

我会这样做,在每个实例的循环

  • 使用命令行工具将数据库转储到一个平面文件,可能到一个临时目录
  • 可以select压缩文件
  • 使用“aws s3”命令将file upload到s3
  • 删除文件系统上的原始文件 – 只是为了节省磁盘空间

或者,您可以使用s3fs将文件夹映射到s3,然后将文件简单地复制到文件系统中的该位置。