Amazonrds 简明教程

Amazon RDS - MS SQL DB Export Import

Amazon RDS MSSQL 提供本机备份和还原机制,作为导出和导入 DB 的机制。可以从内部部署数据库创建完整的备份文件,并将其存储在 Amazon S3 中。接下来,将此备份文件还原到运行 SQL 服务器的现有 Amazon RDS DB 实例。我们可以遵循完全类似的步骤,将数据从 Amazon RDS MSSQL 实例导出并将其还原到内部部署的 SQL Server 数据库。

下图说明了这一方法。

mssql export import

我们将上面创建的备份文件上载到与目标 RDS MSSQL 数据库所在同一区域中预定的 Amazon S3 存储桶。您可以通过链接: this link 了解如何上传。

此本机备份和还原机制具有以下优势。

  1. 将数据库迁移到 Amazon RDS。

  2. 在 Amazon RDS SQL Server DB 实例之间移动数据库。

  3. Import and export data.

  4. 迁移模式、存储过程、触发器和其他数据库代码。

  5. 备份和还原单个数据库,而不是整个 DB 实例。

  6. 创建数据库的副本,用于测试、培训和演示。

  7. 通过 Amazon S3 将备份文件存储到 Amazon RDS 中并从中传输,从而为您提供灾难恢复的额外保护层。

Backing Up a Database

要备份数据库,您在从 SSMS 客户端软件连接到 Amazon RDS MSSQL 实例后调用 rds_backup_database 存储过程。存储过程使用以下参数执行。

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',
        @kms_master_key_arn='arn:aws:kms:region:account-id:key/key-id',
        @overwrite_S3_backup_file=1,
        @type='FULL';

成功完成以上存储过程将生成一个备份文件,并将其存储在 S3 的指定存储桶中。

Restoring a Database

要恢复数据库,请在通过 SSMS 客户端软件连接到 Amazon RDS MSSQL 实例后,调用 rds_restore_database 存储过程。使用以下参数执行存储过程。

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',
        @kms_master_key_arn='arn:aws:kms:region:account-id:key/key-id';