All Products
Search
Document Center

ApsaraDB RDS:Solusi migrasi cloud SQL Server

Last Updated:Mar 25, 2026

Topik ini menjelaskan solusi umum untuk migrasi SQL Server ke cloud. Anda dapat memilih solusi yang paling sesuai dengan kebutuhan berdasarkan lokasi sumber data, alat yang digunakan oleh masing-masing solusi, serta keunggulan dan keterbatasannya.

Prasyarat

  • Buat instans ApsaraDB RDS for SQL Server sebagai tujuan. Spesifikasi dan kapasitas penyimpanan instans tujuan harus lebih besar dari atau sama dengan database sumber.

  • Jalankan pernyataan SELECT name, compatibility_level FROM sys.databases; pada instans sumber dan tujuan untuk memeriksa apakah instans tujuan kompatibel dengan instans sumber.

  • Pastikan pengaturan keamanan untuk database sumber dan tujuan—seperti firewall, daftar putih IP, dan security group—mengizinkan akses dari alat migrasi.

  • Jika Anda berencana menggunakan Data Transmission Service (DTS) untuk migrasi cloud, penuhi persyaratan berikut:

Solusi migrasi cloud

Migrasi backup fisik

Metode

Prosedur

Tutorial

Migrasi cloud manual menggunakan Object Storage Service (OSS)

  1. Ubah model pemulihan database (backup_type) menjadi FULL.

  2. Lakukan full backup dan unggah file backup ke bucket OSS.

  3. Lakukan backup inkremental secara berkala dan unggah log-nya.

  4. Hentikan operasi write ke database sumber. Setelah memulihkan log inkremental terakhir, alihkan layanan Anda ke database baru.

Migrasi cloud cepat menggunakan Data Disaster Recovery dan DTS

  1. Menerapkan gerbang fisik.

  2. Proses ini secara internal menggunakan bucket OSS.

  3. Hentikan operasi write ke database sumber. Setelah memulihkan log inkremental terakhir, alihkan layanan Anda ke database baru.

Migrasikan database SQL Server yang dikelola sendiri menggunakan physical gateway

Migrasi logis

Mode sinkronisasi inkremental

Prosedur

Tutorial

Menggunakan DTS (Log Parsing)

  1. Gunakan DTS untuk migrasi cloud.

    Catatan

    Atur SQL Server Incremental Synchronization Mode menjadi Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported).

  2. Hentikan operasi write ke database sumber. Setelah data inkremental terakhir disinkronkan, alihkan layanan Anda ke database baru.

Menggunakan DTS (Hybrid Log Parsing)

  1. Gunakan DTS untuk migrasi cloud.

    Catatan

    Untuk SQL Server Incremental Synchronization Mode, pilih Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (Hybrid Log-based Parsing).

  2. Hentikan operasi write ke database sumber. Setelah data inkremental terakhir disinkronkan, alihkan layanan Anda ke database baru.

Menggunakan DTS (CDC Instance Polling)

  1. Gunakan DTS untuk migrasi cloud.

    Catatan

    Atur SQL Server Incremental Synchronization Mode menjadi Polling and querying CDC instances for incremental synchronization.

  2. Hentikan operasi write ke database sumber. Setelah data inkremental terakhir disinkronkan, alihkan layanan Anda ke database baru.

Solusi lainnya

Metode

Prosedur

Tutorial

Menggunakan alat SSMS

  1. Hentikan operasi write ke database sumber.

  2. Gunakan tool SSMS untuk mengekspor data dari database sumber.

  3. Gunakan tool SSMS untuk mengimpor data yang diekspor ke database tujuan.

  4. Verifikasi konsistensi data, lalu alihkan layanan Anda ke database baru.

Migrasikan data ke ApsaraDB RDS for SQL Server menggunakan SSMS

Perbandingan solusi migrasi cloud

Migrasi backup fisik

Metode

Keunggulan

Keterbatasan

Migrasi cloud manual menggunakan OSS

  • Menggunakan fitur backup dan restore native SQL Server serta mendukung berbagai skenario.

  • Menawarkan kecepatan migrasi tinggi.

  • Memungkinkan Anda mengubah nama file backup secara manual sesuai format log database sumber.

  • Memerlukan backup manual dan pengunggahan log, yang merupakan proses kompleks.

  • Hanya dapat memigrasikan satu database dalam satu waktu.

  • Melibatkan beberapa menit service downtime. Anda harus menghentikan operasi write ke database sumber dan menunggu pemulihan log inkremental terakhir sebelum cutover.

  • Tidak mendukung migrasi dari versi yang lebih baru ke versi yang lebih lama.

  • Tidak mendukung pemetaan database, tabel, atau kolom.

Migrasi cloud cepat menggunakan Data Disaster Recovery dan DTS

  • Menyediakan proses konfigurasi yang sederhana dan mudah di Konsol DTS.

  • Mendukung migrasi beberapa database dalam satu task.

  • Menggunakan fitur backup dan restore native SQL Server serta mendukung berbagai skenario.

  • Menawarkan kecepatan migrasi tinggi.

  • File log backup harus memiliki ekstensi .bak.

  • Melibatkan beberapa menit service downtime. Anda harus menghentikan operasi write ke database sumber dan menunggu pemulihan log inkremental terakhir sebelum cutover.

  • Memerlukan instalasi AliyunDBSAgent pada mesin fisik database sumber.

  • Tidak mendukung migrasi dari versi yang lebih baru ke versi yang lebih lama.

  • Tidak mendukung pemetaan database, tabel, atau kolom.

Migrasi logis

Mode sinkronisasi inkremental

Keunggulan

Keterbatasan

Menggunakan DTS (Log Parsing)

  • Menyediakan proses konfigurasi yang sederhana dan mudah di Konsol DTS.

  • Mendukung migrasi antar versi database yang berbeda.

  • Mendukung pemetaan database, tabel, dan kolom.

  • Untuk task migrasi inkremental, Anda tidak perlu menghentikan operasi write ke database sumber. Hal ini memungkinkan migrasi lancar dengan downtime minimal.

  • Mendukung migrasi database dari cloud pihak ketiga ke Alibaba Cloud.

    Sebagai contoh, mode ini mendukung full migration dari Amazon RDS for SQL Server, serta full dan incremental migration dari Azure SQL Managed Instance dan SQL Server di Azure Virtual Machines.

  • Hanya beberapa operasi DDL yang didukung. Operasi DDL yang sering (lebih dari 100 per jam) dapat mengurangi throughput migrasi.

  • Jika laju penulisan log pada database sumber melebihi 10 MB/s, 30 GB/jam, atau 500 GB/hari, task dapat mengalami latensi atau gagal.

  • Jika database sumber dibackup lebih dari sekali per jam, DTS mungkin gagal mengambil log backup lokal. Simpan log backup di disk lokal setidaknya selama tiga hari.

  • DTS membuat objek seperti trigger dan tabel penyimpanan DDL di database sumber untuk menangkap perubahan DDL.

  • Anda harus menonaktifkan foreign key constraint selama migrasi inkremental. Jika tidak, task dapat gagal.

  • Tidak mendukung skenario yang melibatkan heap table, tabel tanpa primary key, tabel terkompresi, atau tabel dengan computed column.

  • Data duplikat dapat terjadi pada tabel tanpa primary key atau unique constraint, sehingga solusi ini tidak cocok jika Anda perlu memigrasikan tabel semacam itu.

  • DTS menggunakan fungsi fn_log untuk mengambil dan mengurai log. Fungsi ini tidak selalu stabil, dan perilaku tak terduga dapat menyebabkan task gagal.

  • Satu task DTS dapat memigrasikan maksimal 10 database. Melebihi batas ini dapat menyebabkan masalah stabilitas dan performa.

Menggunakan DTS (Hybrid Log Parsing)

  • Menyediakan proses konfigurasi yang sederhana dan mudah di Konsol DTS.

  • Mendukung migrasi antar versi database yang berbeda.

  • Mendukung pemetaan database, tabel, dan kolom.

  • Mendukung tabel dengan properti tertentu, seperti heap table, tabel tanpa primary key, dan tabel terkompresi.

  • Mendukung migrasi database dari cloud pihak ketiga ke Alibaba Cloud.

    Sebagai contoh, mode ini mendukung full migration dari Amazon RDS for SQL Server, serta full dan incremental migration dari Azure SQL Managed Instance dan SQL Server di Azure Virtual Machines.

  • Database sumber harus versi tertentu: Edisi Perusahaan minimal 2008, dan Edisi Standar minimal 2016 SP1 (tidak termasuk 2017).

  • Hanya beberapa operasi DDL yang didukung. Operasi DDL yang sering (lebih dari 100 per jam) dapat mengurangi throughput migrasi.

  • Jika laju penulisan log pada database sumber melebihi 10 MB/s, 30 GB/jam, atau 500 GB/hari, task dapat mengalami latensi atau gagal.

  • Jika database sumber dibackup lebih dari sekali per jam, DTS mungkin gagal mengambil log backup lokal. Simpan log backup di disk lokal setidaknya selama tiga hari.

  • DTS mengaktifkan change data capture (CDC) tingkat database dan CDC untuk beberapa tabel. DTS juga membuat objek seperti trigger dan tabel penyimpanan DDL di database sumber untuk menangkap perubahan DDL.

  • Anda harus menonaktifkan foreign key constraint selama migrasi inkremental. Jika tidak, task dapat gagal.

  • Tidak mendukung skenario yang melibatkan tabel dengan computed column.

  • Data duplikat dapat terjadi pada tabel tanpa primary key atau unique constraint, sehingga solusi ini tidak cocok jika Anda perlu memigrasikan tabel semacam itu.

  • DTS menggunakan fungsi fn_log untuk mengambil dan mengurai log. Fungsi ini tidak selalu stabil, dan perilaku tak terduga dapat menyebabkan task gagal.

  • Satu task DTS dapat memigrasikan maksimal 10 database. Melebihi batas ini dapat menyebabkan masalah stabilitas dan performa.

Menggunakan DTS (CDC Instance Polling)

  • Menyediakan proses konfigurasi yang sederhana dan mudah di Konsol DTS.

  • Mendukung migrasi antar versi database yang berbeda.

  • Mendukung pemetaan database, tabel, dan kolom.

  • Mendukung migrasi database dari cloud pihak ketiga ke Alibaba Cloud.

    Sebagai contoh, mode ini mendukung full dan incremental migration dari Amazon RDS for SQL Server, Azure SQL Database, dan Google Cloud SQL for SQL Server.

  • Menawarkan migrasi inkremental yang lebih stabil dengan penggunaan network bandwidth lebih rendah.

    Karena mode ini menggunakan komponen Change Data Capture (CDC) native SQL Server untuk mendapatkan data inkremental, tidak perlu menangkap transaction log dari sumber, dan pemotongan log (log truncation) pada database sumber tidak memengaruhi task DTS.

  • Untuk SQL Server di Azure Virtual Machines, Edisi Perusahaan minimal 2008, dan Edisi Standar minimal 2016 SP1 (tidak termasuk 2017).

  • Akun DTS untuk database sumber harus memiliki izin untuk mengaktifkan CDC tingkat database dan tingkat tabel. Role sysadmin diperlukan untuk CDC tingkat database, sedangkan akun istimewa diperlukan untuk CDC tingkat tabel.

    Catatan
    • Akun istimewa (server administrator) yang disediakan oleh Konsol Azure SQL Database memenuhi persyaratan tersebut. Untuk database berbasis vCore, semua tipe instans mendukung CDC. Untuk database berbasis DTU, hanya tipe instans S3 ke atas yang mendukung CDC.

    • Akun istimewa Amazon RDS for SQL Server memenuhi persyaratan dan dapat digunakan untuk mengaktifkan CDC tingkat database untuk stored procedure.

    • Tabel clustered columnstore index tidak mendukung CDC.

    • Modul prasyarat task migrasi inkremental mengaktifkan CDC untuk database sumber. Selama proses ini, database sumber mungkin terkunci sebentar karena batasan kernel database SQL Server.

  • Migrasi lebih dari 1.000 tabel sumber dapat menyebabkan latensi atau ketidakstabilan.

  • Satu task DTS dapat memigrasikan maksimal 10 database. Melebihi batas ini dapat menyebabkan masalah stabilitas dan performa.

  • Data duplikat dapat terjadi pada tabel tanpa primary key atau unique constraint, sehingga solusi ini tidak cocok jika Anda perlu memigrasikan tabel semacam itu.

  • Migrasi data inkremental memiliki latensi sekitar 10 detik.

  • Operasi DDL berturut-turut untuk menambah atau menghapus kolom (lebih dari dua operasi dalam satu menit) tidak didukung dan dapat menyebabkan task gagal.

  • Jangan memodifikasi instance CDC di database sumber. Jika tidak, task dapat gagal atau menyebabkan kehilangan data.

  • Migrasi jumlah besar tabel lintas beberapa database dapat menimbulkan risiko stabilitas dan performa.

Solusi lainnya

Metode

Keunggulan

Keterbatasan

Menggunakan tool SSMS

Prosesnya sederhana dan stabil, dengan risiko ketidakkonsistenan data yang rendah.

  • Anda harus menghentikan operasi write ke database sumber untuk mencegah ketidakkonsistenan data.

  • Memerlukan migrasi manual menggunakan tool SSMS.

Memilih solusi migrasi cloud

Penting
  • Jika database sumber tidak mendukung migrasi inkremental, Anda harus menghentikan semua operasi write pada database sumber sebelum memulai migrasi.

  • Saat menggunakan DTS untuk migrasi logis dari sumber selain SQL Server yang dikelola sendiri atau TencentDB for SQL Server, Anda harus menggunakan mode Poll and Query CDC Instances for Incremental Synchronization untuk migrasi data inkremental.

Sumber data

Dukungan migrasi inkremental

Solusi yang tersedia

Solusi yang direkomendasikan

SQL Server yang dikelola sendiri

Ya

  • Migrasi cloud manual dengan backup fisik menggunakan OSS

  • Migrasi cloud cepat dengan backup fisik menggunakan Data Disaster Recovery dan DTS

  • Migrasi logis menggunakan DTS

Migrasi cloud cepat dengan backup fisik menggunakan Data Disaster Recovery dan DTS

Azure SQL Database

Ya

  • Migrasi logis menggunakan DTS

  • Migrasi cloud end-to-end menggunakan RDS

  • Migrasi cloud menggunakan tool SSMS

Migrasi cloud end-to-end menggunakan RDS atau migrasi logis menggunakan DTS

Azure SQL Managed Instance

SQL Server di Azure Virtual Machines

  • Migrasi logis menggunakan DTS

  • Migrasi cloud end-to-end menggunakan RDS

  • Migrasi cloud menggunakan tool SSMS

  • Migrasi cloud manual dengan backup fisik menggunakan OSS

Amazon RDS for SQL Server

Ya

  • Migrasi logis menggunakan DTS

  • Migrasi cloud end-to-end menggunakan RDS

  • Migrasi cloud menggunakan tool SSMS

  • Migrasi cloud manual dengan backup fisik menggunakan OSS

Migrasi cloud end-to-end menggunakan RDS atau migrasi logis menggunakan DTS

Huawei Cloud RDS for SQL Server

Ya

Migrasi logis menggunakan DTS

TencentDB for SQL Server

Ya

  • Migrasi logis menggunakan DTS

  • Migrasi cloud manual dengan backup fisik menggunakan OSS

  • Migrasi cloud menggunakan tool SSMS

Migrasi logis menggunakan DTS

Google Cloud SQL for SQL Server

Ya

  • Migrasi cloud menggunakan tool SSMS

  • Migrasi logis menggunakan DTS

Migrasi logis menggunakan DTS

Langkah selanjutnya

Verifikasi data

Setelah memigrasikan database SQL Server Anda, verifikasi bahwa semua data telah sepenuhnya dimigrasikan ke instans ApsaraDB RDS for SQL Server. Anda dapat memilih metode verifikasi sesuai kebutuhan. Bagian berikut menjelaskan dua metode umum.

Verifikasi data inti

Anda dapat mengurutkan data berdasarkan tanggal atau ID auto-increment untuk memeriksa apakah data bisnis terbaru telah dimigrasikan dengan benar. Sebagai contoh, jika tabel bisnis inti bernama Orders berisi bidang seperti OrderID (ID auto-increment) dan OrderDate, Anda dapat menjalankan kueri berikut:

-- Kueri SQL di instans database sumber
SELECT TOP 10 OrderID, OrderDate, CustomerID, TotalAmount
FROM Orders
ORDER BY OrderDate DESC;

-- Kueri SQL di instans database tujuan
SELECT TOP 10 OrderID, OrderDate, CustomerID, TotalAmount
FROM Orders
ORDER BY OrderDate DESC;

Verifikasi penuh menggunakan DTS

DTS memungkinkan Anda memverifikasi data antara database sumber dan tujuan tanpa service downtime. Anda dapat menggunakan DTS untuk membuat task full data verification guna memeriksa apakah semua data telah sepenuhnya dimigrasikan.

Perbarui statistik database

Jika performa instans ApsaraDB RDS for SQL Server tujuan menurun signifikan setelah migrasi, hal tersebut kemungkinan disebabkan oleh perubahan distribusi data dalam instans ApsaraDB RDS for SQL Server. Anda dapat melakukan full update statistik database untuk memulihkan atau meningkatkan performa instans.