Halaman ini menjelaskan cara membuat file cadangan yang diperlukan untuk memigrasikan database SQL Server ke Cloud SQL untuk SQL Server, termasuk bagian berikut:
- Persyaratan dan batasan mencantumkan batasan penting untuk dukungan file cadangan.
- Konvensi penamaan menjelaskan persyaratan seputar nama file untuk file cadangan Anda.
- Membuat cadangan penuh berisi langkah-langkah untuk membuat file cadangan penuh.
- Membuat cadangan diferensial berisi langkah-langkah untuk membuat file cadangan diferensial.
- File cadangan log transaksi berisi langkah-langkah untuk membuat file cadangan log transaksi.
Persyaratan dan batasan
Persyaratan dan batasan berikut berlaku untuk file cadangan yang Anda gunakan untuk migrasi:
Semua file cadangan harus memiliki nama yang sesuai dengan konvensi penamaan masing-masing.
Ukuran maksimum file cadangan Anda adalah 5 TB.
Anda dapat membagi file cadangan penuh atau diferensial menjadi file yang lebih kecil jika ukuran database Anda melebihi 5 TB. Setiap stripe dapat memiliki ukuran maksimum 5 TB.
Anda dapat menggunakan file log transaksi dan cadangan terenkripsi untuk migrasi Anda. Jika ingin menggunakan file cadangan terenkripsi, Anda harus mengenkripsi setiap file cadangan (penuh, diferensial, log transaksi) yang Anda gunakan untuk database tertentu yang disertakan dalam migrasi Anda. Lihat Menggunakan cadangan terenkripsi.
Database Migration Service tidak memigrasikan database SQL Server
master
.Instance SQL Server sumber Anda tidak dapat menggunakan model pemulihan sederhana. Untuk mengetahui informasi selengkapnya tentang model pemulihan, lihat Model Pemulihan (SQL Server) dalam dokumentasi Microsoft.
Konvensi penamaan
Bagian ini membahas persyaratan nama file untuk file cadangan lengkap, diferensial, dan log transaksi Anda.
Untuk mengetahui informasi tentang persyaratan nama dan struktur folder bucket Cloud Storage, lihat Membuat dan mengonfigurasi bucket Cloud Storage.
Untuk mengetahui informasi tentang cara Database Migration Service menggunakan berbagai jenis file cadangan dalam migrasi SQL Server homogen, lihat Jenis file cadangan yang didukung.
Konvensi penamaan file cadangan untuk instance SQL Server lokal
Nama file cadangan penuh
Konvensi penamaan untuk file cadangan penuh bergantung pada apakah Anda menggunakan satu file cadangan, atau apakah Anda membaginya menjadi beberapa bagian. Dalam kedua skenario tersebut, Database Migration Service mengharuskan Anda menyertakan stempel waktu epoch (dinyatakan sebagai stempel waktu Unix dalam detik) yang mewakili perkiraan waktu saat Anda membuat cadangan penuh.
Jika cadangan penuh Anda adalah satu file, nama file harus menggunakan format
db_name.epoch.bak
, dengan:db_name
adalah nama database Andaepoch
adalah stempel waktu Unix dalam detik.bak
adalah ekstensi file
Contoh yang valid meliputi:
my-business-database.1712649600.bak
my-other-database.1712649600.bak
Jika Anda membagi cadangan lengkap menjadi beberapa bagian terpisah, setiap bagian dapat menggunakan nama apa pun yang Anda pilih, tetapi harus diupload ke folder Cloud Storage yang namanya adalah stempel waktu Unix dalam detik:
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/ | | |- ...
Nama file cadangan diferensial
Konvensi penamaan untuk file cadangan diferensial bergantung pada apakah Anda menggunakan satu file cadangan, atau apakah Anda membaginya menjadi beberapa jalur. Dalam kedua skenario, Database Migration Service mengharuskan Anda menyertakan stempel waktu epoch (dinyatakan sebagai stempel waktu Unix dalam detik) yang menunjukkan perkiraan waktu saat Anda melakukan pencadangan diferensial.
Jika pencadangan diferensial Anda adalah satu file, nama file harus menggunakan format
db_name.epoch.ext
, dengan:db_name
adalah nama database Andaepoch
adalah stempel waktu Unix dalam detik.ext
adalah ekstensi file; file pencadangan diferensial dapat menggunakan ekstensi berikut:.bak
,.dif
,.diff
.
Contoh yang valid meliputi:
my-business-database.1731159833.bak
my-other-database.1731159833.dif
Jika Anda membagi pencadangan diferensial menjadi beberapa bagian terpisah, setiap bagian dapat menggunakan nama apa pun yang Anda pilih, tetapi harus diupload ke folder Cloud Storage yang namanya adalah stempel waktu Unix dalam detik:
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/ | | |- ...
Nama file log transaksi
Nama file log transaksi Anda harus menggunakan format db_name.epoch.trn
,
dengan:
db_name
adalah nama database Andaepoch
adalah stempel waktu Unix dalam detik.bak
adalah ekstensi file
Contoh yang valid meliputi:
my-business-database.1712649600.trn
my-other-database.1712649600.trn
Konvensi penamaan file cadangan untuk Amazon RDS
Nama file cadangan penuh
Konvensi penamaan untuk file cadangan penuh bergantung pada apakah Anda menggunakan satu file cadangan, atau apakah Anda membaginya menjadi beberapa bagian. Dalam kedua skenario tersebut, Database Migration Service mengharuskan Anda menyertakan stempel waktu epoch (dinyatakan sebagai stempel waktu Unix dalam detik) yang mewakili perkiraan waktu saat Anda membuat cadangan penuh.
Jika cadangan penuh Anda adalah satu file, nama file harus menggunakan format
db_id.family_guid.rds_backup_seq_id.epoch.bak
, dengan:db_id
adalah ID database internal Amazon RDSfamily_guid
adalah ID unik Amazon RDS dari database asli saat pembuatanrds_backup_seq_id
adalah ID yang digunakan Amazon RDS secara internal untuk mempertahankan nomor urut setiap file cadangan log transaksiepoch
adalah stempel waktu Unix dalam detik.bak
adalah ekstensi file
Contoh yang valid meliputi:
3.CX11CB3D-G2E4-46D9-B462-CE40CDA97E89.22.1712649600.bak
1.FD21CD3F-B5E4-27Z9-B462-CE40CDA97E89.21.1712649600.bak
Jika Anda membagi cadangan lengkap menjadi beberapa bagian terpisah, setiap bagian dapat menggunakan nama apa pun yang Anda pilih, tetapi harus diupload ke folder Cloud Storage yang namanya adalah stempel waktu Unix dalam detik:
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/ | | |- ...
Nama file cadangan diferensial
Konvensi penamaan untuk file cadangan diferensial bergantung pada apakah Anda menggunakan satu file cadangan, atau apakah Anda membaginya menjadi beberapa jalur. Dalam kedua skenario, Database Migration Service mengharuskan Anda menyertakan stempel waktu epoch (dinyatakan sebagai stempel waktu Unix dalam detik) yang menunjukkan perkiraan waktu saat Anda melakukan pencadangan diferensial.
Jika pencadangan diferensial Anda adalah satu file, nama file harus menggunakan format
db_id.family_guid.rds_backup_seq_id.epoch.ext
, dengan:db_id
adalah ID database internal Amazon RDSfamily_guid
adalah ID unik Amazon RDS dari database asli saat pembuatanrds_backup_seq_id
adalah ID yang digunakan Amazon RDS secara internal untuk mempertahankan nomor urut setiap file cadangan log transaksiepoch
adalah stempel waktu Unix dalam detik.bak
adalah ekstensi file; file pencadangan diferensial dapat menggunakan ekstensi berikut:.bak
,.dif
,.diff
.
Contoh yang valid meliputi:
3.CX11CB3D-G2E4-46D9-B462-CE40CDA97E89.22.1731159833.bak
1.FD21CD3F-B5E4-27Z9-B462-CE40CDA97E89.21.1731159833.dif
Jika Anda membagi cadangan lengkap menjadi beberapa bagian terpisah, setiap bagian dapat menggunakan nama apa pun yang Anda pilih, tetapi harus diupload ke folder Cloud Storage yang namanya adalah stempel waktu Unix dalam detik:
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/ | | |- ...
Nama file log transaksi
Di Amazon RDS, file cadangan log transaksi dibuat secara otomatis dan menyertakan semua ID database yang diperlukan.
Nama default ini mencakup stempel waktu epoch dan didukung sepenuhnya
di Database Migration Service. Anda dapat mengupload file ini langsung ke folder /log/
.
Buat cadangan penuh instance sumber Anda
File cadangan database lengkap diperlukan untuk fase pemuatan awal tugas migrasi Anda. Jika Anda ingin mengenkripsi cadangan, pastikan Anda menyimpan kunci enkripsi agar dapat menguploadnya ke Cloud Storage nanti saat membuat tugas migrasi. Lihat Menggunakan cadangan terenkripsi.
Membuat cadangan penuh untuk instance SQL Server lokal
Anda dapat membuat cadangan penuh instance SQL Server lokal menggunakan T-SQL atau SQL Server Management Studio (SSMS). Ikuti langkah-langkah berikut:
- Pastikan Anda memenuhi persyaratan berikut:
- Anda menggunakan persyaratan penamaan yang benar untuk file cadangan Anda.
- Database sumber Anda tidak menggunakan model pemulihan sederhana. Lihat Model Pemulihan (SQL Server) dalam dokumentasi Microsoft.
- Jika ukuran database Anda melebihi 5 TB, pastikan Anda membagi cadangan lengkap menjadi strip terpisah. Setiap stripe dapat memiliki ukuran maksimum 5 TB. Lihat Mencadangkan perangkat dalam set media stripe.
- Buat cadangan penuh instance sumber Anda. Lihat
Panduan memulai: Mencadangkan dan memulihkan database SQL Server dengan SSMS
dalam dokumentasi Microsoft. Anda juga dapat memeriksa contoh perintah berikut:
Contoh perintah T-SQL untuk satu file cadangan penuh
Perintah contoh ini akan membuat cadangan penuh database
AdventureWorks2022
. File cadangan yang dihasilkan menggunakan konvensi penamaan yang diperlukan.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
Contoh perintah T-SQL untuk file cadangan penuh bergaris
Perintah contoh ini akan membuat cadangan penuh database
AdventureWorks2022
. File cadangan yang dihasilkan menggunakan konvensi penamaan yang diperlukan.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
- Upload file cadangan Anda ke bucket Cloud Storage. Lihat Membuat dan mengonfigurasi bucket Cloud Storage.
Membuat cadangan penuh untuk Amazon RDS
Untuk membuat cadangan penuh sumber Amazon RDS Anda, ikuti langkah-langkah berikut:
- Pastikan Anda memenuhi persyaratan berikut:
- Anda menggunakan persyaratan penamaan yang benar untuk file cadangan Anda.
- Database sumber Anda tidak menggunakan model pemulihan sederhana. Lihat Menentukan model pemulihan untuk database Microsoft SQL Server Anda dalam dokumentasi Amazon RDS.
- Jika Anda ingin menggunakan pencadangan log transaksi setelah melakukan pencadangan penuh, aktifkan pencadangan otomatis di instance Amazon RDS Anda.
- Siapkan kemampuan pencadangan native. Lihat Menyiapkan pencadangan dan pemulihan native dalam dokumentasi Amazon RDS.
- Buat cadangan penuh instance sumber Anda. Jika ukuran database Anda melebihi 5 TB, pastikan Anda membagi pencadangan penuh menjadi beberapa stripe terpisah menggunakan parameter
@number_of_files
. Setiap stripe dapat memiliki ukuran maksimum 5 TB. Lihat Mencadangkan database dalam dokumentasi Amazon RDS.Anda juga dapat memeriksa contoh perintah berikut:
Contoh kueri untuk melakukan pencadangan penuh di Amazon RDS
Perintah contoh ini akan membuat cadangan penuh database
AdventureWorks2022
. File cadangan yang dihasilkan menggunakan konvensi penamaan yang diperlukan.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;
- Upload file cadangan Anda ke bucket Cloud Storage. Lihat Membuat dan mengonfigurasi bucket Cloud Storage.
Buat cadangan diferensial instance sumber Anda
Anda dapat menggunakan file cadangan database diferensial selama fase pemuatan inkremental tugas migrasi Anda. Anda dapat menggunakan file cadangan diferensial terenkripsi jika Anda juga mengenkripsi file cadangan lengkap dan file log transaksi untuk database yang sama. Semua file log transaksi dan cadangan harus menggunakan kunci enkripsi yang sama per database. Lihat Menggunakan cadangan terenkripsi.
Membuat cadangan diferensial untuk instance SQL Server lokal
Anda dapat membuat cadangan diferensial instance SQL Server lokal dengan menggunakan T-SQL atau SQL Server Management Studio (SSMS). Ikuti langkah-langkah berikut:
- Pastikan Anda memenuhi persyaratan berikut:
- Anda menggunakan persyaratan penamaan yang benar untuk file cadangan Anda.
- Database sumber Anda tidak menggunakan model pemulihan sederhana. Lihat Model Pemulihan (SQL Server) dalam dokumentasi Microsoft.
- Jika ukuran database Anda melebihi 5 TB, pastikan Anda membagi pencadangan diferensial menjadi beberapa stripe terpisah. Setiap stripe dapat memiliki ukuran maksimum 5 TB. Lihat Mencadangkan perangkat dalam set media stripe.
- Buat cadangan diferensial instance sumber Anda. Lihat
Membuat Cadangan Database Diferensial
dalam dokumentasi Microsoft. Anda juga dapat memeriksa contoh perintah berikut:
Contoh perintah T-SQL untuk satu file cadangan diferensial
Contoh perintah ini mengambil cadangan diferensial database
AdventureWorks2022
. File cadangan yang dihasilkan menggunakan konvensi penamaan yang diperlukan.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
Contoh perintah T-SQL untuk file cadangan diferensial bergaris
Contoh perintah ini mengambil cadangan diferensial database
AdventureWorks2022
. File cadangan yang dihasilkan menggunakan konvensi penamaan yang diperlukan.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
- Upload file cadangan Anda ke bucket Cloud Storage. Lihat Membuat dan mengonfigurasi bucket Cloud Storage.
Membuat cadangan diferensial untuk Amazon RDS
Untuk melakukan pencadangan diferensial sumber Amazon RDS Anda, ikuti langkah-langkah berikut:
- Pastikan Anda memenuhi persyaratan berikut:
- Anda menggunakan persyaratan penamaan yang benar untuk file cadangan Anda.
- Database sumber Anda tidak menggunakan model pemulihan sederhana. Lihat Menentukan model pemulihan untuk database Microsoft SQL Server Anda dalam dokumentasi Amazon RDS.
- Siapkan kemampuan pencadangan native. Lihat Menyiapkan pencadangan dan pemulihan native dalam dokumentasi Amazon RDS.
- Buat cadangan diferensial instance sumber Anda. Gunakan prosedur tersimpan
rds_backup_database
dengan parametertype
yang ditetapkan keDIFFERENTIAL
.Jika ukuran database Anda melebihi 5 TB, pastikan Anda membagi pencadangan penuh menjadi beberapa stripe terpisah menggunakan parameter
@number_of_files
. Setiap stripe dapat memiliki ukuran maksimum 5 TB.Lihat Mencadangkan database dalam dokumentasi Amazon RDS. Anda juga dapat memeriksa contoh perintah berikut:
Contoh kueri untuk membuat cadangan diferensial di Amazon RDS
Contoh perintah ini mengambil cadangan diferensial database
AdventureWorks2022
. File cadangan yang dihasilkan menggunakan konvensi penamaan yang diperlukan.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;
- Upload file cadangan Anda ke bucket Cloud Storage. Lihat Membuat dan mengonfigurasi bucket Cloud Storage.
Membuat cadangan log transaksi
File cadangan log transaksi berisi perubahan yang terjadi di database sumber setelah Anda melakukan pencadangan penuh. Pencadangan log transaksi diperlukan untuk fase pemuatan berkelanjutan tugas migrasi Anda. Anda dapat menjadwalkan ekspor dan upload log transaksi secara rutin, untuk memastikan update data direplikasi secara berkelanjutan ke instance Cloud SQL for SQL Server tujuan Anda. Lihat Menjadwalkan pencadangan log transaksi.
Jika menggunakan file cadangan terenkripsi, Anda juga harus mengenkripsi file log transaksi untuk database yang sama. Lihat Menggunakan cadangan terenkripsi.
Membuat cadangan log transaksi untuk instance SQL Server lokal
Untuk membuat cadangan log transaksi database SQL Server lokal Anda, ikuti langkah-langkah berikut:
- Pastikan Anda memenuhi persyaratan berikut:
- Anda menggunakan persyaratan penamaan yang benar untuk file cadangan Anda.
- Database sumber Anda tidak menggunakan model pemulihan sederhana. Lihat Model Pemulihan (SQL Server) dalam dokumentasi Microsoft.
- Ekspor file log transaksi dari database sumber SQL Server Anda. Lihat
Mencadangkan log transaksi dalam dokumentasi Microsoft.
Anda juga dapat memeriksa contoh perintah berikut:
Contoh perintah T-SQL untuk mengekspor file log transaksi ke disk lokal
Perintah contoh ini membuat cadangan log transaksi database
AdventureWorks2022
dan menyimpan file di disk lokal. File cadangan yang dihasilkan menggunakan konvensi penamaan yang diperlukan.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
- Upload file cadangan log transaksi ke bucket Cloud Storage yang Anda buat untuk migrasi.
Lakukan pencadangan log transaksi untuk Amazon RDS
Pencadangan log transaksi dibuat secara otomatis jika pencadangan otomatis diaktifkan di instance Amazon RDS Anda. Lihat Mengaktifkan pencadangan otomatis dalam dokumentasi Amazon RDS.
Untuk menggunakan file cadangan log transaksi untuk migrasi Anda, ikuti langkah-langkah berikut:
- Aktifkan akses ke file log transaksi di instance Amazon RDS Anda.
Lihat
Akses ke cadangan log transaksi dengan RDS untuk SQL Server.
Anda juga dapat memeriksa contoh perintah berikut:
Contoh panggilan prosedur tersimpan untuk mengaktifkan akses log transaksi di 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;
- Salin file cadangan log transaksi dari bucket S3 Anda ke bucket Cloud Storage yang Anda buat untuk migrasi.