Anda dapat menggunakan Data Transmission Service (DTS) untuk memigrasikan data antara instans ApsaraDB RDS for SQL Server.
Lingkup penerapan
-
Instans ApsaraDB RDS for SQL Server sumber dan tujuan harus telah dibuat. Untuk informasi versi database yang didukung, lihat Ikhtisar solusi migrasi. Untuk membuat instans ApsaraDB RDS for SQL Server, lihat Buat instans ApsaraDB RDS for SQL Server.
Penting-
Jika instans sumber ApsaraDB RDS for SQL Server menjalankan SQL Server 2008 atau 2008 R2, migrasi data inkremental tidak didukung.
-
Dalam mode parsing berbasis log hibrida (yaitu, SQL Server Incremental Synchronization Mode diatur ke log-based parsing for non-heap tables and CDC-based incremental synchronization for heap tables), versi engine berikut didukung untuk database sumber:
Enterprise atau Enterprise Evaluation: 2012, 2014, 2016, 2019, 2022, atau 2025.
Standard: 2016, 2019, 2022, atau 2025.
-
-
Kapasitas penyimpanan instans ApsaraDB RDS for SQL Server tujuan harus lebih besar daripada ruang penyimpanan yang digunakan oleh instans ApsaraDB RDS for SQL Server sumber.
-
Jika instans sumber memenuhi salah satu kondisi berikut, pertimbangkan untuk membagi migrasi menjadi beberapa tugas.
-
Instans sumber memiliki lebih dari 10 database.
-
Pencadangan log dilakukan lebih dari sekali per jam untuk satu database.
-
Lebih dari 100 operasi Data Definition Language (DDL) dilakukan per jam pada satu database.
-
Laju pembuatan log untuk satu database melebihi 20 MB/s.
-
Anda harus mengaktifkan change data capture (CDC) pada lebih dari 1.000 tabel.
-
Catatan penggunaan
|
Type |
Description |
|
Batasan database sumber |
|
|
Batasan lainnya |
|
|
Kasus khusus |
|
Penagihan
|
Jenis migrasi |
Biaya konfigurasi instans |
Biaya lalu lintas Internet |
|
Migrasi skema dan migrasi data penuh |
Gratis. |
Saat parameter Access Method database tujuan diatur ke Public IP Address, Anda dikenai biaya lalu lintas Internet. Untuk informasi lebih lanjut, lihat Billing overview. |
|
Migrasi data inkremental |
Dikenai biaya. Untuk informasi lebih lanjut, lihat Billing overview. |
Jenis migrasi
-
Migrasi skema
DTS memigrasikan skema objek yang dipilih dari database sumber ke database tujuan.
-
Migrasi data penuh
DTS memigrasikan semua data yang ada dari objek yang dipilih dari database sumber ke database tujuan.
-
Migrasi data inkremental
Setelah migrasi data penuh, DTS memigrasikan pembaruan inkremental dari database sumber ke database tujuan, sehingga memungkinkan migrasi lancar tanpa mengganggu aplikasi Anda.
Operasi SQL untuk migrasi inkremental
|
Jenis operasi |
Pernyataan SQL |
|
DML |
INSERT, UPDATE, dan DELETE Catatan
DTS tidak mendukung migrasi pernyataan |
|
DDL |
Catatan
|
Persyaratan izin untuk akun database
|
Database |
Migrasi skema |
Migrasi data penuh |
Migrasi data inkremental |
Referensi |
|
Instans Sumber |
Izin baca |
Izin baca |
Izin Owner pada objek yang akan dimigrasikan |
Untuk informasi lebih lanjut, lihat Create databases and accounts. |
|
Instans tujuan |
Izin baca dan tulis |
Izin baca dan tulis |
Izin baca dan tulis |
Prosedur
-
Buka halaman daftar tugas migrasi untuk wilayah tujuan menggunakan salah satu metode berikut.
Dari konsol DTS
-
Masuk ke konsol Data Transmission Service (DTS).
-
Di panel navigasi kiri, klik Data Migration.
-
Di pojok kiri atas halaman, pilih wilayah tempat instans migrasi berada.
Dari konsol DMS
CatatanOperasi aktual dapat berbeda tergantung pada mode dan tata letak konsol DMS. Untuk informasi lebih lanjut, lihat Simple mode console dan Customize the layout and style of the DMS console.
-
Masuk ke konsol Data Management (DMS).
-
Di bilah menu atas, pilih .
-
Di sebelah kanan Data Migration Tasks, pilih wilayah tempat instans migrasi berada.
-
-
Klik Create Task untuk membuka halaman konfigurasi tugas.
-
Opsi: Di pojok kanan atas halaman, klik New Configuration Page.
Catatan-
Jika Anda sudah berada di halaman konfigurasi baru (tombol di pojok kanan atas adalah Back to Previous Version), Anda dapat melewati langkah ini.
-
Parameter pada halaman konfigurasi baru dan lama berbeda. Kami menyarankan Anda menggunakan halaman konfigurasi baru.
-
-
Konfigurasikan database sumber dan tujuan.
Bagian
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami menyarankan Anda menentukan nama deskriptif agar mudah diidentifikasi. Nama tidak perlu unik.
Source Database
Select Existing Connection
-
Untuk menggunakan instans database yang telah ditambahkan ke sistem (dibuat atau disimpan), pilih instans database yang diinginkan dari daftar drop-down. Informasi database di bawah akan dikonfigurasi secara otomatis.
CatatanDi konsol DMS, parameter ini bernama Select a DMS database instance..
-
Jika Anda belum mendaftarkan instans database ke sistem, atau tidak perlu menggunakan instans terdaftar, konfigurasikan informasi database secara manual di bawah.
Database Type
Pilih SQL Server.
Connection Type
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans ApsaraDB RDS for SQL Server sumber berada.
Cross-account
Pilih No jika instans sumber berada di Akun Alibaba Cloud yang sama. Jika tidak, pilih Yes.
RDS Instance ID
Pilih ID instans ApsaraDB RDS for SQL Server sumber.
Database Account
Masukkan akun untuk instans ApsaraDB RDS for SQL Server sumber. Untuk informasi tentang izin yang diperlukan, lihat Permissions required for database accounts.
Database Password
Masukkan password untuk akun database.
Encryption
Pilih Non-encrypted atau SSL-encrypted berdasarkan kebutuhan bisnis Anda.
-
Jika enkripsi SSL dinonaktifkan untuk database sumber, pilih Non-encrypted.
-
Jika enkripsi SSL diaktifkan untuk database sumber, pilih SSL-encrypted. Secara default, DTS mempercayai sertifikat server.
Destination Database
Select Existing Connection
-
Untuk menggunakan instans database yang telah ditambahkan ke sistem (dibuat atau disimpan), pilih instans database yang diinginkan dari daftar drop-down. Informasi database di bawah akan dikonfigurasi secara otomatis.
CatatanDi konsol DMS, parameter ini bernama Select a DMS database instance..
-
Jika Anda belum mendaftarkan instans database ke sistem, atau tidak perlu menggunakan instans terdaftar, konfigurasikan informasi database secara manual di bawah.
Database Type
Pilih SQL Server.
Connection Type
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans ApsaraDB RDS for SQL Server tujuan berada.
Instance ID
Pilih ID instans ApsaraDB RDS for SQL Server tujuan.
Database Account
Masukkan akun untuk instans ApsaraDB RDS for SQL Server tujuan. Untuk informasi tentang izin yang diperlukan, lihat Permissions required for database accounts.
Database Password
Masukkan password untuk akun database.
Encryption
Pilih Non-encrypted atau SSL-encrypted berdasarkan kebutuhan bisnis Anda.
-
Jika enkripsi SSL dinonaktifkan untuk database tujuan, pilih Non-encrypted.
-
Jika enkripsi SSL diaktifkan untuk database tujuan, pilih SSL-encrypted. Secara default, DTS mempercayai sertifikat server.
-
-
Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.
Catatan-
Pastikan segmen alamat IP layanan DTS telah ditambahkan secara otomatis atau manual ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Untuk informasi lebih lanjut, lihat Add DTS server IP addresses to a whitelist.
-
Jika database sumber atau tujuan adalah database yang dikelola sendiri (Access Method bukan Alibaba Cloud Instance), Anda juga harus mengklik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers yang muncul.
-
-
Konfigurasikan objek tugas.
-
Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.
Parameter
Deskripsi
Migration Types
-
Jika hanya perlu melakukan migrasi penuh, pilih Schema Migration dan Full Data Migration.
-
Untuk melakukan migrasi tanpa downtime, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.
Catatan-
Jika Anda tidak memilih Schema Migration, pastikan database dan tabel untuk menerima data sudah ada di database tujuan. Anda juga dapat menggunakan fitur pemetaan nama objek di kotak Selected Objects sesuai kebutuhan.
-
Jika Anda tidak memilih Incremental Data Migration, hindari menulis data baru ke instans sumber selama migrasi data untuk memastikan konsistensi data.
Method to Migrate Triggers in Source Database
Pilih metode untuk memigrasikan trigger berdasarkan kebutuhan bisnis Anda. Jika Anda tidak memigrasikan trigger, Anda dapat melewati parameter ini. Untuk informasi lebih lanjut, lihat Configure how to synchronize or migrate triggers.
CatatanParameter ini tersedia hanya jika Anda memilih Schema Migration dan Incremental Data Migration untuk Migration Types.
SQL Server Incremental Synchronization Mode
-
Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (Hybrid Log-based Parsing):
-
Keuntungan:
-
Mendukung skenario yang melibatkan tabel heap sumber, tabel tanpa primary key, tabel terkompresi, atau tabel dengan computed column.
-
Memberikan stabilitas link tinggi. Mode ini dapat memperoleh pernyataan DDL lengkap dan mendukung berbagai skenario DDL.
-
-
Kerugian:
-
DTS membuat trigger `dts_cdc_sync_ddl`, tabel heartbeat `dts_sync_progress`, dan tabel penyimpanan DDL `dts_cdc_ddl_history` di database sumber. DTS juga mengaktifkan CDC tingkat database dan CDC untuk beberapa tabel.
-
Anda tidak dapat menjalankan pernyataan `SELECT INTO`, `TRUNCATE`, atau `RENAME COLUMN` pada tabel dengan CDC diaktifkan di database sumber. Anda tidak dapat menghapus trigger yang dibuat DTS di database sumber secara manual.
-
-
-
Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported):
-
Keuntungan:
Mode ini bersifat non-intrusif terhadap database sumber.
-
Kerugian:
Mode ini tidak mendukung skenario yang melibatkan tabel heap sumber, tabel tanpa primary key, tabel terkompresi, atau tabel dengan computed column.
-
-
Polling and querying CDC instances for incremental synchronization:
-
Keuntungan:
-
Mendukung migrasi penuh dan inkremental saat database sumber adalah Amazon RDS for SQL Server, Azure SQL Database, Azure SQL Managed Instance, Azure SQL Server on Virtual Machine, atau Google Cloud SQL for SQL Server.
-
Mode ini menggunakan komponen CDC native SQL Server untuk memperoleh data inkremental, yang meningkatkan stabilitas migrasi inkremental dan mengurangi penggunaan bandwidth jaringan.
-
-
Kerugian:
-
Akun database sumber yang digunakan oleh instans DTS harus memiliki izin untuk mengaktifkan CDC. Migrasi data inkremental memiliki latensi sekitar 10 detik.
-
Saat Anda memigrasikan beberapa tabel lintas beberapa database, Anda mungkin mengalami masalah stabilitas dan kinerja.
-
-
CatatanParameter ini tersedia hanya jika Incremental Data Migration dipilih untuk Migration Types.
The maximum number of tables for which CDC is enabled that DTS supports.
Anda dapat mengatur batas jumlah tabel yang diaktifkan CDC untuk instans migrasi saat ini berdasarkan kebutuhan bisnis Anda. Nilai default adalah 1.000.
CatatanParameter ini tidak tersedia jika Anda mengatur SQL Server Incremental Synchronization Mode ke Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported).
Processing Mode of Conflicting Tables
-
Precheck and Report Errors: Memeriksa apakah tabel dengan nama yang sama ada di database tujuan. Jika tidak ada tabel dengan nama yang sama, pemeriksaan awal lolos. Jika ada tabel dengan nama yang sama, kesalahan dilaporkan selama pemeriksaan awal, dan tugas migrasi data tidak dimulai.
CatatanJika tabel di database tujuan memiliki nama yang sama tetapi tidak dapat dengan mudah dihapus atau diganti namanya, Anda dapat mengubah nama tabel di database tujuan. Untuk informasi lebih lanjut, lihat Object name mapping.
-
Ignore Errors and Proceed: Melewatkan pemeriksaan untuk tabel dengan nama yang sama.
PeringatanMemilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan risiko bisnis. Misalnya:
-
Jika skema tabel konsisten dan catatan di database tujuan memiliki nilai primary key yang sama dengan catatan di database sumber:
-
Selama migrasi penuh, DTS menyimpan catatan di database tujuan. Catatan dari database sumber tidak dimigrasikan.
-
Selama migrasi inkremental, DTS tidak menyimpan catatan di database tujuan. Catatan dari database sumber menimpa catatan di database tujuan.
-
-
Jika skema tabel tidak konsisten, hanya beberapa kolom data yang mungkin dimigrasikan, atau migrasi dapat gagal. Lakukan dengan hati-hati.
-
Source Objects
Di kotak Source Objects, klik objek yang akan dimigrasikan, lalu klik
untuk memindahkannya ke kotak Selected Objects.CatatanGranularitas pemilihan objek migrasi adalah skema, tabel, dan kolom. Jika Anda hanya memilih tabel atau kolom sebagai objek migrasi, objek lain seperti view, trigger, dan prosedur tersimpan tidak dimigrasikan ke database tujuan.
Selected Objects
-
Untuk mengubah nama satu objek migrasi di instans target, klik kanan objek di kotak Selected Objects. Untuk informasi lebih lanjut, lihat Map individual schema, table, and column names.
-
Untuk mengubah nama beberapa objek migrasi di instans target, klik Selected Objects di pojok kanan atas kotak Batch Edit. Untuk informasi lebih lanjut, lihat Map multiple schema, table, and column names.
Catatan-
Jika Anda menggunakan fitur pemetaan nama objek, objek lain yang bergantung pada objek yang diganti nama mungkin gagal dimigrasikan.
-
Untuk memfilter data menggunakan kondisi WHERE, klik kanan tabel di bagian Selected Objects dan tentukan kondisi filter di kotak dialog yang muncul. Untuk informasi lebih lanjut, lihat Set filter conditions.
-
Untuk memilih operasi SQL yang akan dimigrasikan di tingkat database atau tabel, klik kanan objek di bagian Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog yang muncul. Untuk informasi tentang operasi yang didukung, lihat Supported SQL operations for incremental migration.
-
-
Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas pada klaster bersama. Anda tidak perlu memilih satu. Jika Anda menginginkan tugas yang lebih stabil, Anda dapat membeli dedicated cluster untuk menjalankan tugas migrasi DTS.
Retry Time for Failed Connections
Setelah tugas migrasi dimulai, jika koneksi ke database sumber atau tujuan gagal, DTS melaporkan kesalahan dan segera mulai mencoba koneksi ulang. Durasi percobaan ulang default adalah 720 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 10 hingga 1.440 menit. Kami menyarankan Anda mengatur durasi lebih dari 30 menit. Jika DTS terhubung kembali ke database sumber dan tujuan dalam durasi yang ditentukan, tugas migrasi secara otomatis dilanjutkan. Jika tidak, tugas gagal.
Catatan-
Untuk beberapa instans DTS yang berbagi sumber atau tujuan yang sama, waktu percobaan ulang jaringan ditentukan oleh pengaturan tugas yang dibuat terakhir.
-
Karena Anda dikenai biaya untuk tugas selama periode percobaan ulang koneksi, kami menyarankan Anda menyesuaikan waktu percobaan ulang berdasarkan kebutuhan bisnis Anda, atau segera melepaskan instans DTS setelah instans database sumber dan tujuan dilepaskan.
Retry Time for Other Issues
Setelah tugas migrasi dimulai, jika terjadi masalah non-konektivitas, seperti pengecualian eksekusi DDL atau DML, di database sumber atau tujuan, DTS melaporkan kesalahan dan segera mulai mencoba operasi ulang. Durasi percobaan ulang default adalah 10 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 1 hingga 1.440 menit. Kami menyarankan Anda mengatur durasi lebih dari 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditentukan, tugas migrasi secara otomatis dilanjutkan. Jika tidak, tugas gagal.
PentingNilai Retry Time for Other Issues harus kurang dari nilai Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Selama migrasi penuh, DTS mengonsumsi sumber daya baca dan tulis di database sumber dan tujuan, yang dapat meningkatkan beban database. Jika diperlukan, Anda dapat mengaktifkan pembatasan kecepatan untuk tugas migrasi penuh. Anda dapat mengatur Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s) untuk mengurangi beban pada database tujuan.
Catatan-
Item konfigurasi ini tersedia hanya jika Anda memilih Full Data Migration untuk Migration Types.
-
Anda juga dapat menyesuaikan kecepatan migrasi penuh setelah instans migrasi berjalan.
Enable Throttling for Incremental Data Migration
Jika diperlukan, Anda juga dapat memilih untuk mengatur batas kecepatan untuk tugas migrasi inkremental. Anda dapat mengatur RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s) untuk mengurangi beban pada database tujuan.
Catatan-
Item konfigurasi ini tersedia hanya jika Anda memilih Incremental Data Migration untuk Migration Types.
-
Anda juga dapat menyesuaikan kecepatan migrasi inkremental setelah instans migrasi berjalan.
Environment Tag
Anda dapat memilih tag lingkungan untuk mengidentifikasi instans berdasarkan kebutuhan bisnis Anda. Dalam contoh ini, parameter ini tidak diperlukan.
Configure ETL
Berdasarkan kebutuhan bisnis Anda, pilih apakah akan mengonfigurasi fitur ETL untuk memproses data.
-
Yes: Mengonfigurasi fitur ETL. Anda juga harus memasukkan pernyataan pemrosesan data di kotak teks.
-
No: Tidak mengonfigurasi fitur ETL.
Monitoring and Alerting
Pilih apakah akan mengatur peringatan dan menerima pemberitahuan peringatan berdasarkan kebutuhan bisnis Anda.
-
No: Tidak mengatur peringatan.
-
Yes: Konfigurasikan peringatan dengan mengatur alert threshold dan alert notifications. Jika migrasi gagal atau latensi melebihi ambang batas, sistem mengirim pemberitahuan peringatan.
-
-
Klik Next: Data Validation untuk mengonfigurasi tugas validasi data.
Untuk informasi lebih lanjut tentang fitur validasi data, lihat Configure data validation.
-
-
Simpan tugas dan jalankan pemeriksaan awal.
-
Untuk melihat parameter konfigurasi instans ini saat Anda memanggil Operasi API, arahkan pointer ke tombol Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters di balon yang muncul.
-
Jika Anda tidak perlu melihat atau telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
Catatan-
Sebelum tugas migrasi dimulai, DTS melakukan pemeriksaan awal. Tugas hanya dimulai setelah lolos pemeriksaan awal.
-
Jika pemeriksaan awal gagal, klik View Details di sebelah item pemeriksaan yang gagal, perbaiki masalah berdasarkan prompt, lalu jalankan pemeriksaan awal lagi.
-
Jika peringatan dilaporkan selama pemeriksaan awal:
-
Untuk item pemeriksaan yang tidak dapat diabaikan, klik View Details di sebelah item yang gagal, perbaiki masalah berdasarkan prompt, lalu jalankan pemeriksaan awal lagi.
-
Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again untuk melewatkan item peringatan dan menjalankan pemeriksaan awal lagi. Jika Anda memilih untuk mengabaikan peringatan, hal ini dapat menyebabkan masalah seperti ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda.
-
-
-
Beli instans.
-
Saat Success Rate mencapai 100%, klik Next: Purchase Instance.
-
Di halaman Purchase, pilih spesifikasi link untuk instans migrasi data. Untuk informasi lebih lanjut, lihat tabel berikut.
Kategori
Parameter
Deskripsi
New Instance Class
Resource Group Settings
Pilih kelompok sumber daya tempat instans tersebut berada. Nilai default adalah default resource group. Untuk informasi lebih lanjut, lihat What is Resource Management?
Instance Class
DTS menyediakan spesifikasi migrasi dengan tingkat kinerja berbeda. Spesifikasi link memengaruhi kecepatan migrasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi lebih lanjut, lihat Data migration link specifications.
-
Setelah konfigurasi selesai, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.
-
Klik Buy and Start. Di kotak dialog OK yang muncul, klik OK.
Anda dapat melihat progres tugas migrasi di halaman daftar Data Migration Tasks.
Catatan-
Jika tugas migrasi tidak mencakup migrasi inkremental, tugas akan berhenti secara otomatis setelah migrasi penuh selesai. Setelah tugas berhenti, Status-nya berubah menjadi Completed.
-
Jika tugas migrasi mencakup migrasi inkremental, tugas tidak berhenti secara otomatis. Tugas migrasi inkremental terus berjalan. Selama tugas migrasi inkremental berjalan, Status tugas adalah Running.
-
-