首页 > 解决方案 > Amazon RDS:备份和还原到现有数据库实例上的新数据库

问题描述

我有一个托管在 Amazon RDS 上的数据库,我需要对其进行备份并从中创建新数据库。新手,不知道怎么弄。尝试从 SSMS 做,但没有奏效。

标签: amazon-web-servicesamazon-rds

解决方案


这是谷歌的顶级搜索结果之一,但这里有一些过时的信息。

您可以在 RDS 中为 sql server 启用 sql native 备份/还原,将单个数据库备份到 S3,然后将该数据库还原到具有新数据库名称的同一 RDS 实例。

环境设置和执行备份/恢复的步骤:

  1. 创建一个 S3 存储桶来存储您的本机备份。
  2. 通过为您的 RDS 实例配置新选项组并添加“SQLSERVER_BACKUP_RESTORE”选项来启用 Sql 本机备份。
  3. 在 SSMS 中执行一系列程序来运行备份和恢复任务:

exec msdb.dbo.rds_backup_database 
@source_db_name='database_name', @s3_arn_to_backup_to='arn:aws:s3:::bucket_name/file_name_and_extension', 
@overwrite_S3_backup_file=1;

exec msdb.dbo.rds_restore_database 
@restore_db_name='database_name', 
@s3_arn_to_restore_from='arn:aws:s3:::bucket_name/file_name_and_extension';

exec msdb.dbo.rds_task_status @db_name='database_name'

注意:我找不到有关删除此先前限制的任何公告:

您无法将备份文件还原到用于创建备份文件的同一数据库实例。相反,将备份文件还原到新的数据库实例。

但是,截至今天,我可以确认将本机备份还原到同一个实例可以正常工作。


推荐阅读