All Products
Search
Document Center

Data Transmission Service:Migrasi data dari instans ApsaraDB MyBase for SQL Server ke instans ApsaraDB RDS for SQL Server

Last Updated:Mar 28, 2026

Layanan Transmisi Data (DTS) memungkinkan Anda memigrasikan data dari instans ApsaraDB MyBase for SQL Server ke instans ApsaraDB RDS for SQL Server dengan downtime minimal. Panduan ini memandu Anda melalui konfigurasi tugas migrasi yang mencakup migrasi skema, migrasi data penuh, dan migrasi data inkremental.

Prasyarat

Sebelum memulai, pastikan bahwa:

Penting

Jika Anda menetapkan SQL Server Incremental Synchronization Mode ke Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables, maka mode parsing log hibrida digunakan. Versi database sumber berikut didukung:

  • Edisi Enterprise atau Enterprise Evaluation: SQL Server 2012, 2014, 2016, 2019, atau 2022

  • Edisi Standard: SQL Server 2016, 2019, atau 2022

Kapan harus membagi menjadi beberapa tugas

Pisahkan migrasi menjadi beberapa tugas jika salah satu kondisi berikut berlaku pada instans sumber:

  • Instans sumber berisi lebih dari 10 database.

  • Backup log untuk satu database dilakukan dalam interval kurang dari 1 jam.

  • Satu database mengeksekusi lebih dari 100 pernyataan DDL per jam.

  • Log ditulis dengan laju 20 MB/s untuk satu database.

  • Change data capture (CDC) perlu diaktifkan untuk lebih dari 1.000 tabel.

Penagihan

Jenis migrasiBiaya konfigurasi tugasBiaya traffic Internet
Migrasi skema dan migrasi data penuhGratisGratis
Migrasi data inkrementalDikenai biaya. Lihat Ikhtisar penagihan.

Pilih jenis migrasi

DTS mendukung tiga jenis migrasi. Gabungkan sesuai kebutuhan Anda.

Jenis migrasiFungsinyaKapan digunakan
Migrasi skemaMemigrasikan skema objek yang dipilih dari sumber ke tujuanSelalu pilih sebagai langkah pertama
Migrasi data penuhMemigrasikan semua data yang ada dari sumber ke tujuanWajib untuk migrasi awal
Migrasi data inkrementalSecara terus-menerus memigrasikan perubahan data setelah migrasi penuh selesaiPilih untuk meminimalkan downtime dan menjaga layanan tetap berjalan selama migrasi

Untuk detail dukungan migrasi skema lengkap, lihat Objek yang didukung dan tidak didukung.

Catatan DTS tidak memigrasikan foreign keys. Operasi cascade dan delete yang didefinisikan di database sumber tidak dibawa ke tujuan.

Batasan

Tinjau batasan berikut sebelum mengonfigurasi tugas.

Persyaratan database sumber

  • Server tempat database sumber di-deploy harus memiliki bandwidth outbound yang mencukupi. Jika tidak, kecepatan migrasi data menurun.

  • Tabel yang akan dimigrasikan harus memiliki kendala PRIMARY KEY atau UNIQUE, dan semua field harus unik. Jika tidak, database tujuan mungkin berisi catatan duplikat.

  • Satu tugas migrasi dapat memigrasikan hingga 1.000 tabel saat Anda mengganti nama tabel atau kolom selama migrasi. Untuk lebih dari 1.000 tabel, konfigurasikan beberapa tugas atau lakukan migrasi di tingkat database, bukan tingkat tabel.

  • Satu tugas migrasi dapat memigrasikan hingga 10 database. Untuk lebih dari 10 database, konfigurasikan beberapa tugas.

Untuk migrasi data inkremental, pastikan juga:

  • Fitur pencatatan data diaktifkan. Mode backup harus diatur ke Full, dan backup fisik penuh harus telah dilakukan.

  • Periode retensi log: Retensi log yang tidak mencukupi dapat menyebabkan tugas gagal, atau mengakibatkan inkonsistensi data atau kehilangan data. Tidak memenuhi persyaratan ini juga membatalkan service level agreement (SLA) DTS.

    • Hanya migrasi inkremental: simpan log lebih dari 24 jam.

    • Migrasi penuh + inkremental: simpan log minimal 7 hari. Setelah migrasi penuh selesai, Anda dapat mengatur retensi menjadi lebih dari 24 jam.

Untuk tabel yang diaktifkan CDC, kondisi berikut harus dipenuhi (jika tidak, pemeriksaan awal gagal):

  • Field srvname dalam tampilan sys.sysservers harus sesuai dengan nilai kembali fungsi SERVERPROPERTY.

  • Pemilik database harus sa (SQL Server yang dikelola sendiri) atau sqlsa (ApsaraDB RDS for SQL Server).

  • Edisi Enterprise: SQL Server 2008 atau lebih baru.

  • Edisi Standard: SQL Server 2016 SP1 atau lebih baru.

  • Edisi Standard atau Enterprise yang menjalankan SQL Server 2017: upgrade ke versi yang lebih baru.

Batasan tambahan database sumber:

  • Jangan mengeksekusi pernyataan DDL yang mengubah skema database atau tabel selama migrasi skema dan migrasi data penuh. Hal ini menyebabkan tugas migrasi gagal.

  • Jika Anda hanya melakukan migrasi data penuh (tanpa inkremental), jangan menulis ke database sumber selama migrasi. Untuk menghindari inkonsistensi data, pilih ketiga jenis migrasi: migrasi skema, migrasi data penuh, dan migrasi data inkremental.

  • Jangan menghapus log database sumber sebelum tugas selesai. DTS menggunakan fungsi fn_log untuk mengambil log, yang memiliki bottleneck performa. Menghapus log terlalu dini dapat menyebabkan tugas gagal.

  • Instans sumber read-only tidak mendukung migrasi operasi DDL.

  • Dalam mode parsing log hibrida, jangan melakukan beberapa operasi add-column atau drop-column pada tabel yang sama dalam rentang 10 menit. Misalnya, urutan berikut yang dieksekusi dalam 10 menit menyebabkan error:

    ALTER TABLE test_table DROP COLUMN Flag;
    ALTER TABLE test_table ADD Remark nvarchar(50) not null default('');
  • Jika sumber adalah instans ApsaraDB RDS for SQL Server yang menjalankan edisi Web, atur SQL Server Incremental Synchronization Mode ke Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported).

Batasan lainnya

  • DTS tidak memigrasikan tipe data berikut: TEXT, CURSOR, ROWVERSION, SQL_VARIANT, HIERACHYID, GEOMETRY.

  • Jika Anda menggunakan mode Incremental Synchronization Based on Logs of Source Database (non-hibrida), tabel harus memiliki clustered indexes yang berisi kolom kunci primer. Tabel heap, tabel tanpa kunci primer, tabel terkompresi, dan tabel dengan computed columns tidak didukung. Untuk melihat tabel heap, tabel tanpa kunci primer, tabel terkompresi, atau tabel dengan computed columns, lihat FAQ.

  • Lakukan migrasi hanya antara versi database yang kompatibel.

  • Jika tabel yang diaktifkan CDC dalam satu tugas migrasi melebihi 1.000, pemeriksaan awal gagal.

  • Kami menyarankan agar Anda mengatur jumlah maksimum catatan per detik menjadi 1.000 untuk tabel yang diaktifkan CDC di database sumber.

  • Migrasi data inkremental memerlukan penonaktifan trigger dan foreign keys di database tujuan.

  • Lakukan migrasi selama jam sepi. Migrasi data penuh menggunakan resource baca dan tulis di kedua sisi (sumber dan tujuan), yang meningkatkan beban pada server database. Operasi INSERT konkuren selama migrasi penuh juga menyebabkan fragmentasi tabel di database tujuan, sehingga ruang tabel tujuan menjadi lebih besar daripada sumber.

  • DTS menggunakan ROUND(COLUMN,PRECISION) untuk mengambil nilai dari kolom FLOAT dan DOUBLE. Presisi default: 38 digit untuk FLOAT, 308 digit untuk DOUBLE. Verifikasi bahwa pengaturan presisi ini memenuhi kebutuhan Anda sebelum memulai migrasi.

  • DTS secara otomatis mencoba ulang tugas migrasi yang gagal hingga 7 hari. Sebelum mengalihkan beban kerja ke database tujuan, hentikan atau lepas tugas yang gagal—atau cabut izin tulis akun DTS di tujuan. Jika tidak, tugas yang dilanjutkan dapat menimpa data di tujuan dengan data dari sumber.

  • Jangan menjalankan operasi pengindeksan ulang selama migrasi data inkremental. Hal ini dapat menyebabkan tugas gagal dan mengakibatkan kehilangan data. DTS juga tidak dapat memigrasikan operasi DDL pada kunci primer untuk tabel yang diaktifkan CDC.

Catatan DTS secara otomatis membuat database tujuan di instans RDS. Jika nama database tidak sesuai dengan konvensi penamaan ApsaraDB RDS, buat database secara manual sebelum mengonfigurasi tugas migrasi.

Objek yang didukung dan tidak didukung

Migrasi skema: objek yang didukung

Tabel, view, trigger, synonym, prosedur tersimpan SQL, fungsi SQL, plan guide, tipe yang ditentukan pengguna, rule, default, dan sequence.

Migrasi skema: objek yang tidak didukung

Assemblies, service brokers, indeks teks penuh, katalog teks penuh, skema terdistribusi, fungsi terdistribusi, prosedur tersimpan Common Language Runtime (CLR), fungsi bernilai skalar CLR, fungsi bernilai tabel CLR, tabel internal, objek sistem, dan fungsi agregat.

Operasi SQL yang didukung untuk migrasi data inkremental

Jenis operasiPernyataan SQL yang didukung
DMLINSERT, UPDATE, DELETE.
Catatan

Operasi UPDATE yang hanya memodifikasi field besar tidak dimigrasikan.

DDLALTER TABLE (ADD COLUMN, DROP COLUMN, RENAME COLUMN saja); CREATE TABLE, CREATE INDEX (tabel partisi dan tabel dengan fungsi tidak dimigrasikan); DROP TABLE; RENAME TABLE; TRUNCATE TABLE
Catatan Operasi DDL transaksional tidak dimigrasikan. Misalnya, operasi SQL yang berisi DDL pada beberapa kolom, atau yang mencampur DDL dan DML, tidak dimigrasikan. Kehilangan data dapat terjadi.
Catatan Operasi DDL yang berisi tipe yang ditentukan pengguna tidak dimigrasikan.
Catatan Operasi DDL Online tidak dimigrasikan.
Catatan Dalam mode parsing log hibrida, semua operasi DDL umum dimigrasikan.

Izin yang diperlukan

DatabaseMigrasi skemaMigrasi data penuhMigrasi data inkremental
Instans sumberIzin baca pada objek yang akan dimigrasikanowner permission pada database sumberLihat Buat akun dan Modifikasi izin akun.
Instans tujuanIzin baca dan tulis pada database tujuan (owner permission direkomendasikan)

Konfigurasi tugas migrasi

Langkah 1: Buka halaman Tugas Migrasi Data

  1. Login ke Konsol Data Management (DMS).

  2. Di bilah navigasi atas, arahkan pointer ke DTS, lalu pilih DTS (DTS) > Data Migration.

Catatan Navigasi aktual dapat berbeda tergantung tata letak konsol DMS. Lihat Simple mode dan Sesuaikan tata letak dan gaya konsol DMS. Atau, buka langsung halaman Migrasi Data konsol DTS baru.

Langkah 2: Pilih wilayah

Dari daftar drop-down di sisi kanan Data Migration Tasks, pilih wilayah tempat instans migrasi Anda berada.

Catatan Di konsol DTS baru, pilih wilayah di pojok kiri atas.

Langkah 3: Konfigurasi database sumber dan tujuan

Klik Create Task, lalu konfigurasi parameter berikut.

Peringatan

Setelah mengonfigurasi database sumber dan tujuan, baca Limits yang ditampilkan di bagian atas halaman. Melewatkan langkah ini dapat menyebabkan tugas gagal atau mengakibatkan inkonsistensi data.

Database sumber

ParameterDeskripsi
Task NameNama deskriptif untuk tugas. DTS menghasilkan nama secara otomatis, tetapi menentukan nama yang bermakna mempermudah identifikasi tugas. Tidak perlu unik.
Select an existing DMS database instance (opsional)Jika Anda telah mendaftarkan instans database DMS, pilih di sini. DTS akan mengisi otomatis parameter di bawah. Jika tidak, konfigurasi parameter secara manual.
Database TypePilih SQL Server.
Access MethodPilih Alibaba Cloud Instance. Instans ApsaraDB MyBase for SQL Server terhubung ke DTS menggunakan metode akses ini.
Instance RegionWilayah tempat instans ApsaraDB MyBase for SQL Server sumber berada.
Replicate Data Across Alibaba Cloud AccountsPilih No untuk migrasi dalam akun yang sama.
RDS Instance IDID instans ApsaraDB MyBase for SQL Server sumber.
Database AccountAkun database untuk instans sumber. Lihat Izin yang diperlukan.
Database PasswordKata sandi untuk akun database.

Database tujuan

ParameterDeskripsi
Select an existing DMS database instance (opsional)Jika Anda telah mendaftarkan instans database DMS, pilih di sini. DTS akan mengisi otomatis parameter di bawah. Jika tidak, konfigurasi parameter secara manual.
Database TypePilih SQL Server.
Access MethodPilih Alibaba Cloud Instance.
Instance RegionWilayah tempat instans ApsaraDB RDS for SQL Server tujuan berada.
Instance IDID instans ApsaraDB RDS for SQL Server tujuan.
Database AccountAkun database untuk instans tujuan. Lihat Izin yang diperlukan.
Database PasswordKata sandi untuk akun database.

Langkah 4: Uji konektivitas

Klik Test Connectivity and Proceed.

DTS secara otomatis menambahkan blok CIDR servernya ke daftar putih alamat IP instans database Alibaba Cloud. Untuk database yang dikelola sendiri di instans Elastic Compute Service (ECS), DTS menambahkan blok CIDR ke aturan grup keamanan ECS—tetapi Anda harus memverifikasi bahwa instans ECS dapat mengakses database. Jika database berjalan di beberapa instans ECS, tambahkan secara manual blok CIDR DTS ke grup keamanan setiap instans ECS. Untuk database yang dikelola sendiri di pusat data atau lingkungan cloud pihak ketiga, tambahkan secara manual blok CIDR DTS ke daftar putih alamat IP database. Untuk daftar lengkap blok CIDR, lihat Tambahkan blok CIDR server DTS.

Peringatan

Menambahkan blok CIDR DTS ke daftar putih atau grup keamanan Anda menimbulkan risiko keamanan. Sebelum melanjutkan, ambil tindakan pencegahan: perkuat keamanan username dan password, batasi port yang terbuka, autentikasi panggilan API, dan audit secara berkala aturan daftar putih dan grup keamanan untuk menghapus blok CIDR yang tidak sah. Anda juga dapat menghubungkan database ke DTS melalui Express Connect, VPN Gateway, atau Smart Access Gateway.

Langkah 5: Pilih objek dan konfigurasi mode sinkronisasi

ParameterDeskripsi
Migration TypesPilih jenis migrasi sesuai skenario Anda. Untuk migrasi penuh tanpa downtime, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration. Untuk migrasi dengan jendela pemeliharaan, pilih hanya Schema Migration dan Full Data Migration—tetapi jangan menulis ke database sumber selama migrasi.
Processing Mode of Conflicting TablesPrecheck and Report Errors: gagal dalam pemeriksaan awal jika tujuan berisi tabel dengan nama yang sama seperti tabel sumber. Gunakan pemetaan nama objek untuk mengganti nama tabel yang bentrok. Ignore Errors and Proceed: melewati pemeriksaan awal untuk nama tabel yang identik. Selama migrasi penuh, catatan yang bentrok di tujuan dipertahankan (tidak ditimpa). Selama migrasi inkremental, catatan yang bentrok ditimpa. Gunakan dengan hati-hati.
SQL Server Incremental Synchronization ModeLihat Pilih mode sinkronisasi di bawah.
Source ObjectsPilih objek dari bagian Source Objects dan klik ikon panah kanan untuk memindahkannya ke Selected Objects. Anda dapat memilih kolom, tabel, atau skema. Memilih tabel atau kolom mengecualikan view, trigger, dan prosedur tersimpan.
Selected ObjectsUntuk mengganti nama satu objek, klik kanan objek tersebut dan lihat Pemetaan nama objek tunggal. Untuk mengganti nama beberapa objek sekaligus, klik Batch Edit. Lihat Pemetaan nama beberapa objek sekaligus. Untuk memfilter baris dengan kondisi SQL, klik kanan objek dan tentukan kondisi. Lihat Gunakan kondisi SQL untuk memfilter data. Untuk memilih operasi SQL mana yang direplikasi untuk objek tertentu, klik kanan objek dan pilih operasinya.
Catatan Mengganti nama objek dengan fitur pemetaan nama objek dapat menyebabkan objek lain yang bergantung padanya gagal dimigrasikan.

Pilih mode sinkronisasi

Pilih SQL Server Incremental Synchronization Mode berdasarkan database sumber dan jenis tabel Anda.

ModeKeunggulanKekurangan
Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (parsing log hibrida)Mendukung tabel heap, tabel tanpa kunci primer, tabel terkompresi, dan tabel dengan computed columns. Stabilitas lebih tinggi dan dukungan DDL lengkap.DTS membuat dts_cdc_sync_ddl (trigger), dts_sync_progress (tabel heartbeat), dan dts_cdc_ddl_history (tabel riwayat DDL) di database sumber, dan mengaktifkan CDC. SELECT INTO dan TRUNCATE tidak dapat dijalankan pada tabel yang diaktifkan CDC. Trigger yang dibuat DTS tidak dapat dihapus secara manual.
Incremental Synchronization Based on Logs of Source Database (heap tables tidak didukung)Tidak memodifikasi pengaturan database sumber.Tidak mendukung tabel heap, tabel tanpa kunci primer, tabel terkompresi, atau tabel dengan computed columns. Tabel harus memiliki clustered indexes yang berisi kolom kunci primer.
Polling and querying CDC instances for incremental synchronizationMendukung migrasi dari Amazon RDS SQL Server, Azure SQL Database, dan Google Cloud SQL for SQL Server. Menggunakan komponen CDC native untuk stabilitas dengan bandwidth jaringan lebih rendah.Akun DTS harus memiliki izin untuk mengaktifkan CDC. Migrasi inkremental membutuhkan waktu sekitar 10 detik untuk mulai. Dapat mengalami masalah stabilitas dan performa saat memigrasikan beberapa tabel di beberapa database.
Catatan Dalam mode parsing log hibrida, DTS juga mengaktifkan CDC untuk database sumber dan tabel tertentu.

Langkah 6: Konfigurasi pengaturan lanjutan

Klik Next: Advanced Settings, lalu konfigurasi parameter berikut.

Pengaturan verifikasi data

Untuk mengaktifkan verifikasi data setelah migrasi, lihat Aktifkan verifikasi data.

Pengaturan lanjutan

ParameterDeskripsi
Dedicated Cluster for Task SchedulingSecara default, DTS menjadwalkan tugas ke klaster bersama. Untuk menggunakan klaster khusus, beli terlebih dahulu. Lihat Apa itu klaster khusus DTS?
Set AlertsPilih Yes untuk menerima notifikasi saat tugas gagal atau latensi migrasi melebihi ambang batas. Konfigurasi ambang batas peringatan dan pengaturan notifikasi. Lihat Konfigurasi pemantauan dan peringatan.
Retry Time for Failed ConnectionsBerapa lama DTS mencoba ulang koneksi yang gagal setelah tugas dimulai. Nilai valid: 10–1.440 menit. Default: 720. Kami menyarankan Anda mengatur parameter ini lebih dari 30. Jika DTS terhubung kembali dalam periode ini, tugas dilanjutkan. Jika tidak, tugas gagal. Jika beberapa tugas berbagi database sumber atau tujuan yang sama, waktu retry terpendek yang berlaku. DTS menagih instans selama masa percobaan ulang.
Retry Time for Other IssuesBerapa lama DTS mencoba ulang operasi DDL atau DML yang gagal. Nilai valid: 1–1.440 menit. Default: 10. Kami menyarankan Anda mengatur parameter ini lebih dari 10. Harus lebih pendek dari Retry Time for Failed Connections.
Enable Throttling for Full Data MigrationPilih Yes untuk membatasi beban baca/tulis selama migrasi penuh. Konfigurasi Queries per second (QPS) to the source database, RPS of Full Data Migration, dan BPS of Full Data Migration sesuai kebutuhan. Tersedia hanya jika Full Data Migration dipilih.
Enable Throttling for Incremental Data MigrationPilih Yes untuk membatasi beban selama migrasi inkremental. Konfigurasi RPS of Incremental Data Migration dan BPS of Incremental Data Migration sesuai kebutuhan. Tersedia hanya jika Incremental Data Migration dipilih.
Environment TagTag instans sebagai Regular atau Production Environment sesuai lingkungan Anda.
Configure ETLPilih Yes untuk mengaktifkan fitur ekstrak, transformasi, dan muat (ETL) serta masukkan pernyataan pemrosesan data. Lihat Konfigurasi ETL dan Apa itu ETL?

Langkah 7: Jalankan pemeriksaan awal

Klik Next: Save Task Settings and Precheck.

Catatan Untuk melihat pratinjau parameter OpenAPI untuk konfigurasi tugas ini, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.

DTS menjalankan pemeriksaan awal sebelum migrasi dimulai. Tugas hanya dapat dilanjutkan setelah pemeriksaan awal berhasil.

  • Jika item pemeriksaan gagal, klik View Details, selesaikan masalahnya, lalu klik Precheck Again.

  • Jika item pemeriksaan menampilkan peringatan:

    • Jika peringatan tidak dapat diabaikan, klik View Details, perbaiki masalahnya, lalu jalankan ulang pemeriksaan awal.

    • Jika peringatan dapat diabaikan dengan aman, klik Confirm Alert Details > Ignore > OK > Precheck Again. Mengabaikan peringatan dapat mengakibatkan inkonsistensi data.

Langkah 8: Beli instans

Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance.

Di halaman Purchase Instance, konfigurasi hal berikut:

BagianParameterDeskripsi
New Instance ClassResource Group SettingsKelompok sumber daya untuk instans migrasi. Default: default resource group. Lihat Apa itu Resource Management?
Instance ClassKelas instans menentukan kecepatan migrasi. Pilih berdasarkan volume data dan timeline Anda. Lihat Spesifikasi instans migrasi data.

Langkah 9: Mulai migrasi

  1. Baca dan centang kotak Data Transmission Service (Pay-as-you-go) Service Terms.

  2. Klik Buy and Start, lalu klik OK di kotak dialog.

Tugas muncul di daftar tugas. Pantau perkembangannya dari sana.

Langkah selanjutnya

Setelah tugas migrasi selesai dan latensi migrasi inkremental turun mendekati nol:

  1. Hentikan penulisan ke database sumber.

  2. Tunggu hingga latensi migrasi inkremental mencapai 0 detik.

  3. Alihkan string koneksi aplikasi Anda ke instans ApsaraDB RDS for SQL Server tujuan.

  4. Verifikasi konsistensi data antara sumber dan tujuan.

  5. Hentikan atau lepas tugas migrasi DTS.