RDSでSQLServerのバックアップ
RDSでSQLServerを運用している。RDSではSQLServerのバックアップコマンドは使えないので、AWSが公開しているストアドを使用する必要がある。
ストアドはmsdb.dbo.rds_backup_database
を使う。
msdb.dbo.rds_backup_database
を使うためにはオプショングループを作る必要がある。
DBの稼働中にオプショングループを追加したときにRDSが再起動されないか気になったのでAWSのサポートに問い合わせた。回答は再起動されないということだった。
以下はバックアップのストアド。
exec msdb.dbo.rds_backup_database
@source_db_name='database_name',
@s3_arn_to_backup_to='arn:aws:s3:::bucket_name/file_name.extension',
[@kms_master_key_arn='arn:aws:kms:region:account-id:key/key-id'],
[@overwrite_s3_backup_file=0|1],
[@block_size=512|1024|2048|4096|8192|16384|32768|65536],
[@max_transfer_size=n],
[@buffer_count=n],
[@type='DIFFERENTIAL|FULL'],
[@number_of_files=n];
オプションを除くとこんな感じ。
exec msdb.dbo.rds_backup_database
@source_db_name='database_name',
@s3_arn_to_backup_to='arn:aws:s3:::bucket_name/file_name.extension',
参考
ネイティブバックアップおよび復元の使用 - Amazon Relational Database Service
SQL Server のネイティブバックアップおよび復元のサポート - Amazon Relational Database Service