全部产品
Search
文档中心

Data Transmission Service:Migrasi Database SQL Server ke Alibaba Cloud

更新时间:Jul 06, 2025

Topik ini menjelaskan solusi umum untuk migrasi database SQL Server ke Alibaba Cloud. Anda dapat memilih solusi berdasarkan lokasi sumber data, alat yang digunakan dalam setiap solusi, serta manfaat dan batasan dari masing-masing solusi.

Persiapan

  • Instansi ApsaraDB RDS for SQL Server tujuan telah dibuat. Spesifikasi dan ruang penyimpanan instansi tujuan lebih besar atau sama dengan instansi sumber. Untuk informasi lebih lanjut, lihat Buat instansi ApsaraDB RDS for SQL Server.

    Catatan

    Jika Anda ingin menggunakan Data Transmission Service (DTS) untuk mengonfigurasi tugas migrasi data, pastikan versi database sumber dan tujuan didukung oleh DTS. Untuk informasi lebih lanjut, lihat Ikhtisar skenario migrasi data.

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

  • Pastikan pengaturan keamanan, termasuk aturan firewall, daftar putih, dan grup keamanan, dari database sumber dan tujuan tidak membatasi permintaan akses dari alat migrasi data.

    Catatan

    Jika Anda ingin menggunakan DTS untuk mengonfigurasi tugas migrasi data, pastikan DTS dapat mengakses database sumber dan tujuan. Untuk informasi lebih lanjut, lihat Tambahkan blok CIDR server DTS.

Solusi migrasi cloud

Solusi

Prosedur

Referensi

Migrasi Cloud Berbasis File Cadangan Fisik

Gunakan Object Storage Service (OSS) untuk migrasi data secara manual

  1. Setel parameter backup_type dari database sumber ke FULL.

  2. Cadangkan data penuh dan unggah data cadangan ke Bucket OSS.

  3. Cadangkan dan unggah log inkremental secara terjadwal.

  4. Hentikan penulisan data ke database sumber. Setelah log inkremental terakhir berhasil diputar ulang, alihkan beban kerja ke database baru.

Migrasi data dari instansi SQL Server yang dikelola sendiri ke instansi ApsaraDB RDS for SQL Server

Catatan

Jika database sumber menjalankan SQL Server 2008 R2, kami sarankan Anda meningkatkan versi database sebelum melakukan operasi.

Gunakan Data Disaster Recovery dan DTS untuk migrasi data dengan beberapa klik

  1. Deploy gateway protokol fisik.

  2. Gunakan DTS untuk migrasi data ke cloud. Sistem memanggil Operasi API dari OSS untuk mengunggah data cadangan ke Bucket OSS.

  3. Hentikan penulisan data ke database sumber. Setelah log inkremental terakhir berhasil diputar ulang, alihkan beban kerja ke database baru.

Migrasi data dari database SQL Server yang dikelola sendiri ke instansi ApsaraDB RDS for SQL Server menggunakan gateway fisik

Migrasi Cloud Logis

Gunakan DTS untuk migrasi data dalam mode penguraian log

  1. Gunakan DTS untuk migrasi data ke cloud.

    Catatan

    Setel parameter SQL Server Incremental Synchronization Mode ke Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported).

  2. Hentikan penulisan data ke database sumber. Setelah log inkremental terakhir berhasil diputar ulang, alihkan beban kerja ke database baru.

Migrasi data dari database SQL Server yang dikelola sendiri ke instansi ApsaraDB RDS for SQL Server

Gunakan DTS untuk migrasi data dalam mode penguraian log hibrida

  1. Gunakan DTS untuk migrasi data ke cloud.

    Catatan

    Setel parameter SQL Server Incremental Synchronization Mode ke Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (Hybrid Log-based Parsing).

  2. Hentikan penulisan data ke database sumber. Setelah log inkremental terakhir berhasil diputar ulang, alihkan beban kerja ke database baru.

Gunakan DTS untuk migrasi data dalam mode polling dan kueri instance CDC (Change Data Capture)

  1. Gunakan DTS untuk migrasi data ke cloud.

    Catatan

    Setel parameter SQL Server Incremental Synchronization Mode ke Polling and querying CDC instances for incremental synchronization.

  2. Hentikan penulisan data ke database sumber. Setelah log inkremental terakhir berhasil diputar ulang, alihkan beban kerja ke database baru.

Lainnya

Gunakan SQL Server Management Studio (SSMS) untuk migrasi data

  1. Hentikan penulisan data ke database sumber.

  2. Gunakan SSMS untuk mengekspor data dari database sumber.

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

  4. Setelah konsistensi data diverifikasi, alihkan beban kerja ke database baru.

Gunakan SSMS untuk migrasi data ke instansi RDS for SQL Server

Perbandingan solusi migrasi cloud

Solusi

Manfaat

Batasan

Migrasi Cloud Berbasis File Cadangan Fisik

Gunakan OSS untuk migrasi data secara manual

  • Fitur cadangan dan pemulihan yang disediakan oleh SQL Server mendukung banyak skenario.

  • Kecepatan migrasi cepat.

  • Anda dapat mengubah nama file cadangan secara manual berdasarkan format nama file log dari database sumber.

  • Anda harus mencadangkan dan mengunggah log secara manual, yang cukup rumit.

  • Anda hanya dapat memigrasi satu database pada satu waktu.

  • Anda harus menghentikan penulisan data ke database sumber dan menunggu sampai log inkremental terakhir berhasil diputar ulang sebelum beralih beban kerja ke database baru. Oleh karena itu, layanan mungkin terganggu selama beberapa menit.

  • Versi database tujuan tidak boleh lebih lama daripada versi database sumber.

  • Fitur pemetaan nama untuk database, tabel, dan kolom tidak didukung.

Gunakan Data Disaster Recovery dan DTS untuk migrasi data dengan beberapa klik

  • Operasi migrasi dilakukan di konsol DTS. Konfigurasi dan operasi sederhana dan nyaman.

  • Anda dapat memigrasi beberapa database sekaligus.

  • Fitur cadangan dan pemulihan yang disediakan oleh SQL Server mendukung banyak skenario.

  • Kecepatan migrasi cepat.

  • Ekstensi nama file log cadangan harus bak.

  • Anda harus menghentikan penulisan data ke database sumber dan menunggu sampai log inkremental terakhir berhasil diputar ulang sebelum beralih beban kerja ke database baru. Oleh karena itu, layanan mungkin terganggu selama beberapa menit.

  • Anda harus menginstal AliyunDBSAgent di server database sumber.

  • Versi database tujuan tidak boleh lebih lama daripada versi database sumber.

  • Fitur pemetaan nama untuk database, tabel, dan kolom tidak didukung.

Migrasi Cloud Logis

Gunakan DTS untuk migrasi data dalam mode penguraian log

  • Operasi migrasi dilakukan di konsol DTS. Konfigurasi dan operasi sederhana dan nyaman.

  • Anda dapat memigrasi data antara database versi berbeda.

  • Fitur pemetaan nama untuk database, tabel, dan kolom didukung.

  • Saat Anda memigrasi data inkremental menggunakan DTS, Anda tidak perlu menghentikan penulisan data ke database sumber. Kontinuitas layanan terjamin.

  • Anda dapat memigrasi data dari platform cloud pihak ketiga ke Alibaba Cloud.

    Sebagai contoh, Anda dapat memigrasi data penuh dari Amazon RDS for SQL Server ke Alibaba Cloud dan memigrasi data penuh dan inkremental dari Microsoft Azure SQL Database dalam mode NoSQL ke Alibaba Cloud.

  • Hanya beberapa pernyataan DDL yang dapat dimigrasi. Jika lebih dari 100 pernyataan DDL dieksekusi per jam, kecepatan migrasi akan terpengaruh.

  • Jika kecepatan penulisan log di database sumber melebihi 10 MB/s, 30 GB/jam, atau 500 GB/hari, tugas mungkin tertunda atau bahkan gagal.

  • Jika frekuensi pencadangan log di database sumber melebihi satu kali per jam, DTS mungkin gagal mendapatkan log cadangan lokal. Kami sarankan Anda menyimpan log cadangan selama tiga hari di disk lokal.

  • DTS membuat pemicu dan tabel penyimpanan DDL di database sumber untuk menangkap perubahan DDL.

  • Anda harus menonaktifkan batasan FOREIGN KEY selama migrasi data inkremental. Jika tidak, tugas mungkin gagal.

  • Tabel heap, tabel tanpa kunci utama, tabel terkompresi, dan tabel yang berisi kolom terhitung tidak dapat dimigrasi.

    Catatan

    Untuk informasi tentang cara memeriksa apakah database SQL Server berisi tabel-tabel ini, lihat bagian Bagaimana cara melihat informasi tentang tabel heap, tabel tanpa kunci utama, tabel terkompresi, dan tabel yang berisi kolom terhitung dalam database SQL Server? dari topik FAQ.

  • Tabel tanpa PRIMARY KEY atau UNIQUE constraints mungkin berisi data duplikat. Jika Anda ingin mempertahankan tabel tanpa PRIMARY KEY atau UNIQUE constraints, kami sarankan Anda tidak menggunakan solusi ini.

  • DTS menggunakan fungsi fn_log untuk menarik dan mengurai log. Fungsi ini tidak stabil. Jika operasi tak terduga terjadi, tugas mungkin gagal.

  • Anda dapat memigrasi tidak lebih dari 10 database dalam satu tugas migrasi data. Jika tidak, masalah stabilitas dan performa mungkin terjadi.

Gunakan DTS untuk migrasi data dalam mode penguraian log hibrida

  • Operasi migrasi dilakukan di konsol DTS. Konfigurasi dan operasi sederhana dan nyaman.

  • Anda dapat memigrasi data antara database versi berbeda.

  • Fitur pemetaan nama untuk database, tabel, dan kolom didukung.

  • Tabel heap, tabel tanpa kunci utama, dan tabel terkompresi dapat dimigrasi.

  • Anda dapat memigrasi data dari platform cloud pihak ketiga ke Alibaba Cloud.

    Sebagai contoh, Anda dapat memigrasi data penuh dari Amazon RDS for SQL Server ke Alibaba Cloud dan memigrasi data penuh dan inkremental dari Microsoft Azure SQL Database dalam mode NoSQL ke Alibaba Cloud.

  • Database SQL Server sumber harus SQL Server 2008 atau yang lebih baru dari Enterprise Edition, atau SQL Server 2016 SP1 atau yang lebih baru dari Standard Edition, tidak termasuk SQL Server 2017.

  • Hanya beberapa pernyataan DDL yang dapat dimigrasi. Jika lebih dari 100 pernyataan DDL dieksekusi per jam, kecepatan migrasi akan terpengaruh.

  • Jika kecepatan penulisan log di database sumber melebihi 10 MB/s, 30 GB/jam, atau 500 GB/hari, tugas mungkin tertunda atau bahkan gagal.

  • Jika frekuensi pencadangan log di database sumber melebihi satu kali per jam, DTS mungkin gagal mendapatkan log cadangan lokal. Kami sarankan Anda menyimpan log cadangan selama tiga hari di disk lokal.

  • DTS mengaktifkan CDC untuk database dan beberapa tabel dan membuat pemicu dan tabel penyimpanan DDL di database sumber untuk menangkap perubahan DDL.

  • Anda harus menonaktifkan batasan FOREIGN KEY selama migrasi data inkremental. Jika tidak, tugas mungkin gagal.

  • Tabel yang berisi kolom terhitung tidak dapat dimigrasi.

    Catatan

    Untuk informasi tentang cara memeriksa apakah database SQL Server berisi tabel-tabel ini, lihat bagian Bagaimana cara melihat informasi tentang tabel heap, tabel tanpa kunci utama, tabel terkompresi, dan tabel yang berisi kolom terhitung dalam database SQL Server? dari topik FAQ.

  • Tabel tanpa PRIMARY KEY atau UNIQUE constraints mungkin berisi data duplikat. Jika Anda ingin mempertahankan tabel tanpa PRIMARY KEY atau UNIQUE constraints, kami sarankan Anda tidak menggunakan solusi ini.

  • DTS menggunakan fungsi fn_log untuk menarik dan mengurai log. Fungsi ini tidak stabil. Jika operasi tak terduga terjadi, tugas mungkin gagal.

  • Anda dapat memigrasi tidak lebih dari 10 database dalam satu tugas migrasi data. Jika tidak, masalah stabilitas dan performa mungkin terjadi.

Gunakan DTS untuk migrasi data dalam mode polling dan kueri instance CDC

  • Operasi migrasi dilakukan di konsol DTS. Konfigurasi dan operasi sederhana dan nyaman.

  • Anda dapat memigrasi data antara database versi berbeda.

  • Fitur pemetaan nama untuk database, tabel, dan kolom didukung.

  • Anda dapat memigrasi data dari platform cloud pihak ketiga ke Alibaba Cloud.

    Sebagai contoh, Anda dapat memigrasi data penuh dan inkremental dari Amazon RDS for SQL Server, Microsoft Azure SQL Database, atau Google Cloud SQL for SQL Server ke Alibaba Cloud.

  • Migrasi data inkremental lebih stabil dan mengonsumsi lebih sedikit lebar pita jaringan.

    Jika Anda menggunakan komponen CDC asli SQL Server untuk mendapatkan data inkremental, Anda tidak perlu menangkap data dari log transaksi database sumber. Pemotongan log di database sumber tidak memengaruhi instansi DTS.

  • Jika database sumber adalah Microsoft Azure VM yang menjalankan SQL Server Enterprise Edition, versinya harus SQL Server 2008 atau yang lebih baru. Jika database sumber adalah Microsoft Azure VM yang menjalankan SQL Server Standard Edition, versinya harus SQL Server 2016 SP1 atau yang lebih baru. SQL Server 2017 tidak didukung.

  • Akun yang digunakan DTS untuk mengakses database sumber harus memiliki izin untuk mengaktifkan CDC tingkat database dan tabel. Untuk mengaktifkan CDC tingkat database, akun yang ditugaskan peran sysadmin diperlukan. Untuk mengaktifkan CDC tingkat tabel, akun istimewa diperlukan.

    Catatan
    • Akun administrator server di Microsoft Azure SQL Database memiliki izin yang diperlukan. CDC dapat diaktifkan untuk semua database yang dibeli di Azure SQL Database berdasarkan model vCore. CDC dapat diaktifkan untuk database yang dibeli di Azure SQL Database berdasarkan model unit transaksi database (DTU) hanya jika database memiliki tingkat layanan S3 atau lebih besar.

    • Akun istimewa dari instansi Amazon RDS for SQL Server memiliki izin yang diperlukan. CDC dapat diaktifkan untuk prosedur tersimpan di tingkat database.

    • CDC tidak dapat diaktifkan untuk indeks kolom terkluster.

    • Modul pra-tugas migrasi data inkremental di DTS mengaktifkan CDC di database sumber. Dalam proses ini, tabel terkunci yang berlangsung beberapa detik terjadi di database sumber karena batasan database SQL Server.

  • Anda tidak dapat menjalankan tugas DTS untuk memigrasi lebih dari 1.000 tabel dari database sumber. Jika tidak, tugas mungkin tertunda atau tidak stabil.

  • Anda dapat memigrasi tidak lebih dari 10 database dalam satu tugas migrasi data. Jika tidak, masalah stabilitas dan performa mungkin terjadi.

  • Tabel tanpa PRIMARY KEY atau UNIQUE constraints mungkin berisi data duplikat. Jika Anda ingin mempertahankan tabel tanpa PRIMARY KEY atau UNIQUE constraints, kami sarankan Anda tidak menggunakan solusi ini.

  • Migrasi data inkremental memiliki latensi sekitar 10 detik.

  • Anda tidak dapat mengeksekusi pernyataan DDL untuk menambah atau menghapus kolom lebih dari dua kali dalam satu menit. Jika tidak, tugas migrasi data mungkin gagal.

  • Selama migrasi data, Anda tidak dapat memodifikasi instance CDC dari database sumber. Jika tidak, tugas migrasi data mungkin gagal atau kehilangan data mungkin terjadi.

  • Jika Anda mengonfigurasi tugas DTS untuk memigrasi beberapa tabel di beberapa database, masalah stabilitas dan performa mungkin terjadi.

Lainnya

Gunakan SSMS untuk migrasi data

Operasi sederhana, proses stabil, dan risiko ketidaksesuaian data rendah.

  • Anda harus menghentikan penulisan data ke database sumber. Jika tidak, ketidaksesuaian data mungkin terjadi.

  • Anda harus melakukan migrasi secara manual menggunakan SSMS.

Pilih solusi migrasi cloud

Penting

Jika sumber data tidak mendukung migrasi data inkremental, Anda harus menghentikan penulisan data ke database sumber sebelum memigrasi data ke cloud.

Sumber data

Apakah migrasi data inkremental didukung

Solusi yang didukung

Solusi yang direkomendasikan

Database SQL Server yang dikelola sendiri

Ya

  • Gunakan OSS untuk migrasi data secara manual ke cloud berdasarkan file cadangan fisik

  • Gunakan Data Disaster Recovery dan DTS untuk migrasi data ke cloud berdasarkan file cadangan fisik

  • Gunakan DTS untuk melakukan migrasi cloud logis

Gunakan Data Disaster Recovery dan DTS untuk migrasi data ke cloud berdasarkan file cadangan fisik dengan beberapa klik. Untuk informasi lebih lanjut, lihat Migrasi data dari database SQL Server yang dikelola sendiri ke instansi ApsaraDB RDS for SQL Server menggunakan gateway fisik.

Azure SQL Database

Ya

  • Gunakan DTS untuk melakukan migrasi cloud logis

    Catatan

    Jika Anda ingin memigrasi data inkremental, Anda harus menyetel parameter SQL Server Incremental Synchronization Mode ke Polling and querying CDC instances for incremental synchronization.

  • Gunakan konsol ApsaraDB RDS untuk melakukan migrasi cloud end-to-end

  • Gunakan SSMS untuk melakukan migrasi cloud

Untuk informasi lebih lanjut tentang cara menggunakan konsol ApsaraDB RDS untuk melakukan migrasi cloud end-to-end atau cara menggunakan DTS untuk melakukan migrasi cloud logis, lihat Migrasi data dari database SQL Server di Microsoft Azure ke ApsaraDB RDS for SQL Server.

Azure SQL Managed Instance

SQL Server pada Azure Virtual Machines

  • Gunakan DTS untuk melakukan migrasi cloud logis

    Catatan

    Jika Anda ingin memigrasi data inkremental, Anda harus menyetel parameter SQL Server Incremental Synchronization Mode ke Polling and querying CDC instances for incremental synchronization.

  • Gunakan konsol ApsaraDB RDS untuk melakukan migrasi cloud end-to-end

  • Gunakan SSMS untuk melakukan migrasi cloud

  • Gunakan OSS untuk migrasi data secara manual ke cloud berdasarkan file cadangan fisik

Amazon RDS for SQL Server

Ya

  • Gunakan DTS untuk melakukan migrasi cloud logis

    Catatan

    Jika Anda ingin memigrasi data inkremental, Anda harus menyetel parameter SQL Server Incremental Synchronization Mode ke Polling and querying CDC instances for incremental synchronization.

  • Gunakan konsol ApsaraDB RDS untuk melakukan migrasi cloud end-to-end

  • Gunakan SSMS untuk melakukan migrasi cloud

  • Gunakan OSS untuk migrasi data secara manual ke cloud berdasarkan file cadangan fisik

Untuk informasi lebih lanjut tentang cara menggunakan konsol ApsaraDB RDS untuk melakukan migrasi cloud end-to-end atau cara menggunakan DTS untuk melakukan migrasi cloud logis, lihat Migrasi data dari instansi Amazon RDS for SQL Server ke instansi ApsaraDB RDS for SQL Server.

Huawei Cloud RDS for SQL Server

Tidak

  • Gunakan SSMS untuk melakukan migrasi cloud

  • Gunakan DTS untuk melakukan migrasi cloud logis untuk migrasi data penuh

  • Gunakan OSS untuk migrasi data penuh secara manual ke cloud berdasarkan file cadangan fisik

Untuk informasi lebih lanjut tentang cara menggunakan OSS untuk migrasi data penuh secara manual ke cloud berdasarkan file cadangan fisik, lihat Migrasi data cadangan penuh ke cloud.

Catatan

Database TencentDB for SQL Server

Ya

  • Gunakan DTS untuk melakukan migrasi cloud logis

  • Gunakan OSS untuk migrasi data secara manual ke cloud berdasarkan file cadangan fisik

Untuk informasi lebih lanjut tentang cara menggunakan DTS untuk melakukan migrasi cloud logis, lihat Migrasi data dari database SQL Server yang dikelola sendiri ke instansi ApsaraDB RDS for SQL Server.

Tidak

Gunakan SSMS untuk melakukan migrasi cloud

Google Cloud SQL for SQL Server

Ya

  • Gunakan SSMS untuk melakukan migrasi cloud

  • Gunakan DTS untuk melakukan migrasi cloud logis

    Catatan

    Jika Anda ingin memigrasi data inkremental, Anda harus menyetel parameter SQL Server Incremental Synchronization Mode ke Polling and querying CDC instances for incremental synchronization.

Untuk informasi lebih lanjut tentang cara menggunakan DTS untuk melakukan migrasi cloud logis, lihat Migrasi data dari database SQL Server yang dikelola sendiri ke instansi ApsaraDB RDS for SQL Server.

Apa yang Harus Dilakukan Selanjutnya

Verifikasi Data

Setelah Anda memigrasi data dari database SQL Server ke instansi ApsaraDB RDS for SQL Server, Anda dapat memverifikasi apakah semua data telah dimigrasi ke instansi ApsaraDB RDS for SQL Server. Anda dapat menggunakan salah satu metode verifikasi data berikut berdasarkan kebutuhan bisnis Anda:

Verifikasi Data Inti

Anda dapat mengurutkan data berdasarkan tanggal atau ID auto-increment untuk memverifikasi apakah data bisnis terbaru telah dimigrasi. Sebagai contoh, jika tabel bisnis inti Orders berisi bidang seperti OrderID dan OrderDate, Anda dapat mengeksekusi pernyataan berikut untuk menanyakan bidang tersebut di database sumber dan tujuan:

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

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

Verifikasi Data Penuh Menggunakan DTS

DTS memungkinkan Anda memverifikasi data di database sumber dan tujuan tanpa waktu henti layanan. Anda dapat menggunakan DTS untuk membuat tugas verifikasi data penuh guna memeriksa apakah semua data telah dimigrasi dari database sumber ke database tujuan. Untuk informasi lebih lanjut, lihat Konfigurasikan tugas verifikasi data.

Perbarui Statistik Database

Setelah Anda memigrasi data dari database SQL Server ke instansi ApsaraDB RDS for SQL Server, performa instansi tujuan ApsaraDB RDS for SQL Server mungkin menurun secara signifikan karena perubahan distribusi data di instansi tersebut. Anda dapat memperbarui semua statistik dalam database tertentu untuk memulihkan atau meningkatkan performa instansi. Untuk informasi lebih lanjut, lihat bagian Perbarui Statistik Database dari topik Kelola atribut database.