このページでは、セルフマネージドまたは Amazon RDS SQL Server データベースを Cloud SQL for SQL Server に移行するために必要なバックアップ ファイルを作成する方法について説明します。次のセクションが含まれます。
- 要件と制限事項 では、バックアップ ファイルのサポートに関する重要な制限事項を説明します。
- 命名規則 では、バックアップ ファイルのファイル名に関する要件について説明します。
- フル バックアップを作成する では、フル バックアップ ファイルを作成する手順について説明します。
- 差分バックアップを作成する では、差分バックアップ ファイルを作成する手順について説明します。
- トランザクション ログ バックアップ ファイルでは、 トランザクション ログ バックアップ ファイルを作成する手順について説明します。
要件と制限事項
移行に使用するバックアップ ファイルには、次の要件と制限事項が適用されます。
すべてのバックアップ ファイルには、それぞれの 命名規則に準拠した名前を付ける必要があります。
バックアップ ファイルの最大サイズは 5 TB です。
データベース サイズが 5 TB を超える場合は、フル バックアップ ファイルまたは差分バックアップ ファイルを小さなファイルにストライピングできます。各ストライプの最大サイズは 5 TB です。
移行には、暗号化されたバックアップ ファイルとトランザクション ログファイルを使用できます。 暗号化されたバックアップ ファイルを使用する場合は、移行に含まれる特定のデータベースに使用するすべてのバックアップ ファイル (フル、差分、トランザクション ログ)を暗号化する必要があります。 暗号化されたバックアップを使用するをご覧ください。
Database Migration Service は、 SQL Server
masterデータベースを移行しません。移行元 SQL Server インスタンスでは、シンプルな復元モデル を使用できません。 復元モデルの詳細については、Microsoft ドキュメントの 復元モデル(SQL Server) をご覧ください。
命名規則
このセクションでは、フル バックアップ ファイル、差分バックアップ ファイル、トランザクション ログ バックアップ ファイルのファイル名に関する要件について説明します。
Cloud Storage バケットのフォルダ名と構造 の要件については、 Cloud Storage バケットを作成して構成するをご覧ください。
Database Migration Service が同種 SQL Server 移行でさまざまな種類のバックアップ ファイルを使用する方法については、 サポートされているバックアップ ファイルのタイプをご覧ください。
オンプレミス SQL Server インスタンスのバックアップ ファイルの命名規則
フル バックアップ ファイル名
フル バックアップ ファイルの命名規則は、単一のバックアップ ファイルを使用するか、複数のストライプに分割するかによって異なります。どちらの場合でも、Database Migration Service では、フル バックアップを行ったおおよその時刻を表すエポック タイムスタンプ(秒単位の UNIX タイムスタンプ表記)を含める必要があります。
フル バックアップが単一のファイルの場合、ファイル名は
db_name.epoch.bak形式にする必要があります。db_nameはデータベースの名前です。epochは秒単位の Unix タイムスタンプです。.bakはファイルの拡張子です。
有効な例:
my-business-database.1712649600.bakmy-other-database.1712649600.bak
フル バックアップを個別のストライプに分割する場合、各ストライプには任意の名前を使用できますが、名前が秒単位の Unix タイムスタンプである Cloud Storage フォルダにアップロードする必要があります。
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- 1712649600/ | | | |- mystripe-full_backup_file.bak | | | |- otherStripefull-bkp.bak | |- diff/ | | |- ... | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- 1715250742/ | | | |- cool-stripe-file.bak | | | |- secondStripeFile.bak | |- diff/ | | |- ... | |- log/ | | |- ...
差分バックアップ ファイル名
差分バックアップ ファイルの命名規則は、単一のバックアップ ファイルを使用するか、複数のストライプに分割するかによって異なります。どちらの場合でも、Database Migration Service では、差分バックアップを行ったおおよその時刻を表すエポック タイムスタンプ(秒単位の UNIX タイムスタンプ表記)を含める必要があります。
差分バックアップが単一のファイルの場合、ファイル名は
db_name.epoch.ext形式にする必要があります。db_nameはデータベースの名前です。epochは秒単位の Unix タイムスタンプです。.extはファイルの拡張子です。差分バックアップ ファイルには、次の 拡張子を使用できます:.bak、.dif、.diff。
有効な例:
my-business-database.1731159833.bakmy-other-database.1731159833.dif
差分バックアップを個別のストライプに分割する場合、各ストライプには任意の名前を使用できますが、名前が秒単位の Unix タイムスタンプである Cloud Storage フォルダにアップロードする必要があります。
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- mydiffstripe-diff_backup_file.dif | | | |- mySeconddiffstripe-diff_backup_file.bak | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- firstDiffStripe.bak | | | |- other_diff_stripe.diff | |- log/ | | |- ...
トランザクション ログ ファイル名
トランザクション ログ ファイル名は、db_name.epoch.trn 形式にする必要があります。
db_nameはデータベースの名前です。epochは秒単位の Unix タイムスタンプです。.trnはファイルの拡張子です。
有効な例:
my-business-database.1712649600.trnmy-other-database.1712649600.trn
Amazon RDS のバックアップ ファイルの命名規則
フル バックアップ ファイル名
フル バックアップ ファイルの命名規則は、単一のバックアップ ファイルを使用するか、複数のストライプに分割するかによって異なります。どちらの場合でも、Database Migration Service では、フル バックアップを行ったおおよその時刻を表すエポック タイムスタンプ(秒単位の UNIX タイムスタンプ表記)を含める必要があります。
フル バックアップが単一のファイルの場合、ファイル名は
db_id.family_guid.rds_backup_seq_id.epoch.bak形式にする必要があります。db_idは Amazon RDS の内部データベース識別子です。family_guidは、作成時におけるオリジナルのデータベースの Amazon RDS 固有識別子です。rds_backup_seq_idは、トランザクション ログの各バックアップ ファイルのシーケンス番号を保持する目的で Amazon RDS が内部的に使用する識別子です。epochは秒単位の Unix タイムスタンプです。.bakはファイルの拡張子です。
有効な例:
3.CX11CB3D-G2E4-46D9-B462-CE40CDA97E89.22.1712649600.bak1.FD21CD3F-B5E4-27Z9-B462-CE40CDA97E89.21.1712649600.bak
フル バックアップを個別のストライプに分割する場合、各ストライプには任意の名前を使用できますが、名前が秒単位の Unix タイムスタンプである Cloud Storage フォルダにアップロードする必要があります。
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- 1712649600/ | | | |- mystripe-full_backup_file.bak | | | |- otherStripefull-bkp.bak | |- diff/ | | |- ... | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- 1715250742/ | | | |- cool-stripe-file.bak | | | |- secondStripeFile.bak | |- log/ | | |- ...
差分バックアップ ファイル名
差分バックアップ ファイルの命名規則は、単一のバックアップ ファイルを使用するか、複数のストライプに分割するかによって異なります。どちらの場合でも、Database Migration Service では、差分バックアップを行ったおおよその時刻を表すエポック タイムスタンプ(秒単位の UNIX タイムスタンプ表記)を含める必要があります。
差分バックアップが単一のファイルの場合、ファイル名は
db_id.family_guid.rds_backup_seq_id.epoch.ext形式にする必要があります。db_idは Amazon RDS の内部データベース識別子です。family_guidは、作成時におけるオリジナルのデータベースの Amazon RDS 固有識別子です。rds_backup_seq_idは、トランザクション ログの各バックアップ ファイルのシーケンス番号を保持する目的で Amazon RDS が内部的に使用する識別子です。epochは秒単位の Unix タイムスタンプです。.bakはファイルの拡張子です。差分バックアップ ファイルには、次の 拡張子を使用できます:.bak、.dif、.diff。
有効な例:
3.CX11CB3D-G2E4-46D9-B462-CE40CDA97E89.22.1731159833.bak1.FD21CD3F-B5E4-27Z9-B462-CE40CDA97E89.21.1731159833.dif
フル バックアップを個別のストライプに分割する場合、各ストライプには任意の名前を使用できますが、名前が秒単位の Unix タイムスタンプである Cloud Storage フォルダにアップロードする必要があります。
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- mydiffstripe-diff_backup_file.dif | | | |- mySeconddiffstripe-diff_backup_file.bak | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- firstDiffStripe.bak | | | |- other_diff_stripe.diff | |- log/ | | |- ...
トランザクション ログ ファイル名
Amazon RDS では、トランザクション ログのバックアップ ファイルは自動的に生成されます。生成されるバックアップ ファイルには、必要なデータベース識別子がすべて含まれています。
デフォルト名にはエポック タイムスタンプが含まれており、Database Migration Service で完全にサポートされています。これらのファイルは、/log/ フォルダに直接アップロードできます。
ソース インスタンスのフル バックアップを作成する
データベースのフル バックアップ ファイルは、移行ジョブの初期ロード フェーズに必要です。バックアップを暗号化する場合は、移行ジョブの作成時に Cloud Storage にアップロードできるように、暗号鍵を保存してください。 暗号化されたバックアップを使用するをご覧ください。
オンプレミス SQL Server インスタンスのフル バックアップを作成する
オンプレミス SQL Server インスタンスのフル バックアップは、T-SQL または SQL Server Management Studio(SSMS)を使用して作成できます。手順は次のとおりです。
- 次の要件を満たしていることを確認します。
- バックアップ ファイルに正しい 命名要件 を使用している。
- ソース データベースでシンプルな 復元モデルを使用していない。 Microsoft ドキュメントの復元モデル(SQL Server) をご覧ください。
- データベース サイズが 5 TB を超える場合は、フル バックアップを 個別のストライプに分割します。各ストライプの最大サイズは 5 TB です。 ストライプ化されたメディアセットのバックアップ デバイスをご覧ください。
- ソース インスタンスのフル バックアップを作成します。
Microsoft ドキュメントのクイックスタート: SSMS を使用して SQL Server データベースをバックアップして復元する
をご覧ください。次のサンプル コマンドを確認することもできます。
単一のフル バックアップ ファイルの T-SQL コマンドの例
このサンプル コマンドは、
AdventureWorks2022データベースのフル バックアップを作成します。作成されたバックアップ ファイルは、必要な命名規則を使用します。declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath NVARCHAR(2000); SET @BackupPath = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] TO DISK = N''' + @BackupPath + ''''; EXEC sp_executesql @SQL; GO
ストライプ化されたフル バックアップ ファイルの T-SQL コマンドの例
このサンプル コマンドは、
AdventureWorks2022データベースのフル バックアップを作成します。作成されたバックアップ ファイルは、必要な命名規則を使用します。declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath1 NVARCHAR(2000); DECLARE @BackupPath2 NVARCHAR(2000); DECLARE @BackupPath3 NVARCHAR(2000); SET @BackupPath1 = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '\stripe1.bak'; SET @BackupPath2 = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '\stripe2.bak'; SET @BackupPath3 = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '\stripe3.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] ' + 'TO DISK = N''' + @BackupPath1 + ''', ' + 'DISK = N''' + @BackupPath2 + ''', ' + 'DISK = N''' + @BackupPath3 + ''' ' + 'WITH FORMAT, ' + 'MEDIANAME = N''AdventureWorksStripedSet0'', ' + 'MEDIADESCRIPTION = N''Striped media set for ' + @DATABASE + ' database'''; EXEC sp_executesql @SQL; GO
- バックアップ ファイルを Cloud Storage バケットにアップロードします。 Cloud Storage バケットを作成して構成するをご覧ください。
Amazon RDS のフル バックアップを作成する
Amazon RDS ソースのフル バックアップを作成する手順は次のとおりです。
- 次の要件を満たしていることを確認します。
- バックアップ ファイルに正しい 命名要件 を使用している。
- ソース データベースでシンプルな 復元モデルを使用していない。 Amazon RDS ドキュメントの Microsoft SQL Server データベースの復元モデルを決定するをご覧ください。
- フル バックアップの作成後にトランザクション ログのバックアップを使用する場合は、 Amazon RDS インスタンスで自動バックアップを有効にします。
- ネイティブ バックアップ機能を設定します。Amazon RDS ドキュメントの ネイティブ バックアップと復元の設定をご覧ください。
- ソース インスタンスのフル バックアップを作成します。データベース サイズが 5 TB を超える場合は、フル バックアップを個別のストライプに分割するには、
@number_of_filesパラメータを使用します。各ストライプの最大サイズは 5 TB です。Amazon RDS ドキュメントの データベースのバックアップ をご覧ください。次のサンプル コマンドを確認することもできます。
Amazon RDS でフル バックアップを作成するクエリの例
このサンプル コマンドは、
AdventureWorks2022データベースのフル バックアップを作成します。作成されたバックアップ ファイルは、必要な命名規則を使用します。declare @DATABASE varchar(1000); declare @S3Bucket varchar(1000); declare @unixTimestamp varchar(30); declare @fileName varchar(1000); SELECT @S3Bucket = 'dms-sqlserver-exports'; SELECT @DATABASE = 'AdventureWorks2022'; SELECT @unixTimestamp=CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); SELECT @fileName = ('arn:aws:s3:::' + @S3Bucket + '/' + @DATABASE + '/full/' + @DATABASE + '.' + @unixTimestamp + '/' + CAST(database_id AS VARCHAR(10)) + '.' + CAST(family_guid AS VARCHAR(50)) + '.*.' + @unixTimestamp) FROM master.sys.database_recovery_status WHERE DB_NAME(database_id)=@DATABASE; exec msdb.dbo.rds_backup_database @source_db_name=@DATABASE, @s3_arn_to_backup_to=@fileName, @overwrite_s3_backup_file=1, @type='FULL', @number_of_files=1;
- バックアップ ファイルを Cloud Storage バケットにアップロードします。 Cloud Storage バケットを作成して構成するをご覧ください。
ソース インスタンスの差分バックアップを作成する
移行ジョブの増分ロード フェーズでは、差分データベース バックアップ ファイルを使用できます。同じデータベースのフル バックアップ ファイルとトランザクション ログファイルも暗号化する場合は、暗号化された差分バックアップ ファイルを使用できます。すべてのバックアップ ファイルとトランザクション ログファイルは、データベースごとに同じ暗号鍵を使用する必要があります。 暗号化されたバックアップを使用するをご覧ください。
オンプレミス SQL Server インスタンスの差分バックアップを作成する
オンプレミス SQL Server インスタンスの差分バックアップは、T-SQL または SQL Server Management Studio(SSMS)を使用して作成できます。手順は次のとおりです。
- 次の要件を満たしていることを確認します。
- バックアップ ファイルに正しい 命名要件 を使用している。
- ソース データベースでシンプルな 復元モデルを使用していない。 Microsoft ドキュメントの復元モデル(SQL Server) をご覧ください。
- データベース サイズが 5 TB を超える場合は、差分 バックアップを個別のストライプに分割します。各ストライプの最大サイズは 5 TB です。 ストライプ化されたメディアセットのバックアップ デバイスをご覧ください。
- ソース インスタンスの差分バックアップを作成します。Microsoft ドキュメントの
差分データベース バックアップを作成するをご覧ください。次のサンプル コマンドを確認することもできます。
単一の差分バックアップ ファイルの T-SQL コマンドの例
このサンプル コマンドは、
AdventureWorks2022データベースの差分バックアップを作成します。作成されたバックアップ ファイルは、必要な命名規則を使用します。declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath NVARCHAR(2000); SET @BackupPath = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] TO DISK = N''' + @BackupPath + ''' WITH DIFFERENTIAL'; EXEC sp_executesql @SQL; GO
ストライプ化された差分バックアップ ファイルの T-SQL コマンドの例
このサンプル コマンドは、
AdventureWorks2022データベースの差分バックアップを作成します。作成されたバックアップ ファイルは、必要な命名規則を使用します。declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath1 NVARCHAR(2000); DECLARE @BackupPath2 NVARCHAR(2000); DECLARE @BackupPath3 NVARCHAR(2000); SET @BackupPath1 = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '\stripe1.bak'; SET @BackupPath2 = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '\stripe2.bak'; SET @BackupPath3 = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '\stripe3.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] ' + 'TO DISK = N''' + @BackupPath1 + ''', ' + 'DISK = N''' + @BackupPath2 + ''', ' + 'DISK = N''' + @BackupPath3 + ''' ' + 'WITH DIFFERENTIAL, FORMAT, ' + 'MEDIANAME = N''AdventureWorksStripedSet0'', ' + 'MEDIADESCRIPTION = N''Striped differential media set for ' + @DATABASE + ' database'''; EXEC sp_executesql @SQL; GO
- バックアップ ファイルを Cloud Storage バケットにアップロードします。 Cloud Storage バケットを作成して構成するをご覧ください。
Amazon RDS の差分バックアップを作成する
Amazon RDS ソースの差分バックアップを作成する手順は次のとおりです。
- 次の要件を満たしていることを確認します。
- バックアップ ファイルに正しい 命名要件 を使用している。
- ソース データベースでシンプルな 復元モデルを使用していない。 Amazon RDS ドキュメントの Microsoft SQL Server データベースの復元モデルを決定するをご覧ください。
- ネイティブ バックアップ機能を設定します。Amazon RDS ドキュメントの ネイティブ バックアップと復元の設定をご覧ください。
- ソース インスタンスの差分バックアップを作成します。
typeパラメータをDIFFERENTIALに設定して、rds_backup_databaseストアド プロシージャを使用します。データベース サイズが 5 TB を超える場合は、フル バックアップ を個別のストライプに分割するには、
@number_of_filesパラメータを使用します。 各ストライプの最大サイズは 5 TB です。Amazon RDS ドキュメントの データベースのバックアップ をご覧ください。次の サンプル コマンドを確認することもできます。
Amazon RDS で差分バックアップを作成するクエリの例
このサンプル コマンドは、
AdventureWorks2022データベースの差分バックアップを作成します。作成されたバックアップ ファイルは、必要な命名規則を使用します。declare @DATABASE varchar(1000); declare @S3Bucket varchar(1000); declare @unixTimestamp varchar(30); declare @fileName varchar(1000); SELECT @S3Bucket = 'dms-sqlserver-exports'; SELECT @DATABASE = 'AdventureWorks2022'; SELECT @unixTimestamp=CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); SELECT @fileName = ('arn:aws:s3:::' + @S3Bucket + '/' + @DATABASE + '/full/' + @DATABASE + '.' + @unixTimestamp + '/' + CAST(database_id AS VARCHAR(10)) + '.' + CAST(family_guid AS VARCHAR(50)) + '.*.' + @unixTimestamp) FROM master.sys.database_recovery_status WHERE DB_NAME(database_id)=@DATABASE; exec msdb.dbo.rds_backup_database @source_db_name=@DATABASE, @s3_arn_to_backup_to=@fileName, @overwrite_s3_backup_file=1, @type='DIFFERENTIAL', @number_of_files=1;
- バックアップ ファイルを Cloud Storage バケットにアップロードします。 Cloud Storage バケットを作成して構成するをご覧ください。
トランザクション ログのバックアップを作成する
トランザクション ログ バックアップ ファイルには、フル バックアップの作成後にソース データベースで行われた変更が含まれます。トランザクション ログのバックアップは、移行ジョブの継続的なロード フェーズに必要です。 定期的なトランザクション ログのエクスポートとアップロードをスケジュールして、データの更新が宛先の Cloud SQL for SQL Server インスタンスに継続的にレプリケートされるようにします。 トランザクション ログのバックアップをスケジュールするをご覧ください。
暗号化されたバックアップ ファイルを使用する場合は、同じデータベースのトランザクション ログファイルも暗号化する必要があります。 暗号化されたバックアップを使用するをご覧ください。
オンプレミス SQL Server インスタンスのトランザクション ログのバックアップを作成する
オンプレミス SQL Server データベースのトランザクション ログのバックアップを作成する手順は次のとおりです。
- 次の要件を満たしていることを確認します。
- バックアップ ファイルに正しい 命名要件 を使用している。
- ソース データベースでシンプルな 復元モデルを使用していない。 Microsoft ドキュメントの復元モデル(SQL Server) をご覧ください。
- SQL Server ソース
データベースからトランザクション ログファイルをエクスポートします。Microsoft ドキュメントの
トランザクション ログをバックアップするをご覧ください。
次のサンプル コマンドを確認することもできます。
トランザクション ログファイルをローカル ディスクにエクスポートする T-SQL コマンドの例
このサンプル コマンドは、
AdventureWorks2022データベースのトランザクション ログのバックアップを作成し、ローカル ディスクにファイルを保存します。 作成されたバックアップ ファイルは、必要な命名規則を使用します。declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath NVARCHAR(2000); SET @BackupPath = 'X:\SQLServerBackups\log\' + @DATABASE + '.' + @unixTimestamp + '.trn'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP LOG [' + @DATABASE + '] TO DISK = N''' + @BackupPath + ''''; EXEC sp_executesql @SQL; GO
- トランザクション ログ バックアップ ファイルを 移行用に作成した Cloud Storage バケットにアップロードします。
Amazon RDS のトランザクション ログのバックアップを作成する
Amazon RDS インスタンスで自動バックアップが有効になっている場合、トランザクション ログのバックアップは自動的に作成されます。Amazon RDS ドキュメントの 自動バックアップを有効にする をご覧ください。
移行にトランザクション ログ バックアップ ファイルを使用する手順は次のとおりです。
- Amazon RDS インスタンスでトランザクション ログファイルへのアクセスを有効にします。
RDS for SQL Server でトランザクション ログのバックアップにアクセスするをご覧ください。次のサンプル コマンドを確認することもできます。
Amazon RDS でトランザクション ログのアクセスを有効にするストアド プロシージャ呼び出しの例
declare @DATABASE varchar(1000); declare @S3Bucket varchar(1000); declare @targetS3Arn varchar(1000);
SELECT @S3Bucket = 'dms-sqlserver-exports'; SELECT @DATABASE = 'AdventureWorks2022'; SELECT @targetS3Arn = ('arn:aws:s3:::' + @S3Bucket + '/' + @DATABASE + '/log/');
USE @DATABASE; exec msdb.dbo.rds_tlog_copy_setup @target_s3_arn=@targetS3Arn;
- S3 バケットから、移行用に作成した Cloud Storage バケットにトランザクション ログ バックアップ ファイルをコピーします。