Topik ini menjelaskan cara menggunakan Data Transmission Service (DTS) untuk melakukan migrasi data antar instans ApsaraDB RDS. DTS mendukung migrasi skema, migrasi data penuh, dan migrasi data inkremental. Anda dapat menggabungkan ketiga jenis migrasi tersebut untuk melakukan migrasi database secara lancar tanpa gangguan layanan.
Prasyarat
Instans ApsaraDB RDS sumber dan tujuan harus menjalankan salah satu mesin database berikut:
|
Database sumber |
Database tujuan |
|
RDS MySQL ApsaraDB RDS for MariaDB |
RDS MySQL ApsaraDB RDS for MariaDB |
|
ApsaraDB RDS for SQL Server |
ApsaraDB RDS for SQL Server |
|
ApsaraDB RDS for PostgreSQL |
ApsaraDB RDS for PostgreSQL |
Topik ini mencakup operasi di Konsol DTS lama. Untuk petunjuk penggunaan konsol baru, lihat Migrasi data antar instans RDS MySQL, Migrasi data antar instans ApsaraDB RDS for MariaDB, Migrasi data antar instans ApsaraDB RDS for PostgreSQL, dan Migrasi data antar instans ApsaraDB RDS for SQL Server.
Peringatan
-
Migrasi data tidak memengaruhi data di database sumber. Selama migrasi, DTS membaca data dari database sumber dan mereplikasinya ke database tujuan tanpa menghapus data apa pun dari sumber. Untuk informasi lebih lanjut tentang cara kerja migrasi data, lihat Cara kerja migrasi data.
-
Selama migrasi data penuh, DTS mengonsumsi sumber daya baca dan tulis pada database sumber dan tujuan, sehingga meningkatkan beban kerja mereka. Jika database Anda memiliki performa buruk, spesifikasi rendah, atau beban kerja tinggi (misalnya, database sumber memiliki banyak kueri SQL lambat atau tabel tanpa primary key, atau terjadi deadlock di database tujuan), peningkatan beban tersebut dapat memberatkan database Anda atau bahkan menyebabkan gangguan layanan. Lakukan migrasi data selama jam sepi, misalnya saat utilisasi CPU kedua database berada di bawah 30%.
-
Jika tabel sumber tidak memiliki primary key atau unique constraint dan berisi data yang tidak unik, data duplikat mungkin dibuat di database tujuan.
-
Jika Anda hanya melakukan migrasi data penuh, jangan menulis data baru ke instans ApsaraDB RDS sumber selama migrasi untuk memastikan konsistensi data.
-
Untuk tugas migrasi yang gagal, DTS secara otomatis mencoba melanjutkannya. Saat Anda melakukan cutover ke instans tujuan, hentikan atau lepaskan tugas migrasi terlebih dahulu. Hal ini mencegah tugas dilanjutkan secara otomatis, yang dapat menimpa data di instans tujuan dengan data dari database sumber.
-
DTS secara otomatis membuat database di instans ApsaraDB RDS tujuan. Jika nama database tidak sesuai dengan konvensi penamaan untuk instans ApsaraDB RDS, Anda harus membuat database tersebut di instans ApsaraDB RDS tujuan sebelum mengonfigurasi tugas migrasi.
CatatanUntuk informasi tentang konvensi penamaan dan cara membuat database, lihat Buat database dan akun.
-
Jika Anda melakukan migrasi data antar instans ApsaraDB RDS for PostgreSQL, perlu diperhatikan bahwa setelah cutover ke instans tujuan, sequence baru tidak akan mulai bertambah dari nilai maksimum sequence di database sumber. Sebelum cutover, Anda harus mengkueri nilai maksimum sequence terkait di database sumber, lalu menetapkan nilai-nilai tersebut sebagai nilai awal untuk sequence yang sesuai di database tujuan. Jalankan perintah berikut untuk mengkueri nilai sequence di database sumber:
do language plpgsql $$ declare nsp name; rel name; val int8; begin for nsp,rel in select nspname,relname from pg_class t2 , pg_namespace t3 where t2.relnamespace=t3.oid and t2.relkind='S' loop execute format($_$select last_value from %I.%I$_$, nsp, rel) into val; raise notice '%', format($_$select setval('%I.%I'::regclass, %s);$_$, nsp, rel, val+1); end loop; end; $$;
Penagihan
|
Jenis migrasi |
Biaya konfigurasi tugas |
Biaya traffic internet |
|
Migrasi skema dan migrasi data penuh |
Gratis. |
DTS membebankan biaya traffic internet ketika Access Method database tujuan diatur ke Public IP Address. Ikhtisar penagihan. |
|
Migrasi data inkremental |
Dikenai biaya. Ikhtisar penagihan. |
Jenis migrasi
-
Migrasi skema
DTS memigrasikan skema objek migrasi ke instans tujuan.
-
Migrasi data penuh
DTS memigrasikan semua data yang ada dari objek yang ditentukan dari instans ApsaraDB RDS sumber ke instans ApsaraDB RDS tujuan.
-
Migrasi data inkremental
Di atas migrasi data penuh, DTS menyinkronkan pembaruan inkremental dari instans ApsaraDB RDS sumber ke instans ApsaraDB RDS tujuan. Migrasi data inkremental memungkinkan Anda melakukan migrasi data secara lancar tanpa mengganggu aplikasi yang Anda kelola sendiri.
Operasi SQL untuk migrasi inkremental
|
Skenario migrasi |
Jenis operasi |
Operasi SQL |
|
DML |
INSERT, UPDATE, DELETE, REPLACE |
|
DDL |
|
|
|
Migrasi antar instans ApsaraDB RDS for SQL Server |
DML |
INSERT, UPDATE, DELETE Catatan
Pernyataan UPDATE yang hanya memperbarui kolom large object (LOB) tidak disinkronkan. |
|
DDL |
|
|
|
Migrasi antar instans ApsaraDB RDS for PostgreSQL |
DML |
INSERT, UPDATE, DELETE |
|
DDL |
|
Izin akun database
|
Skenario migrasi |
Database |
Migrasi skema |
Migrasi data penuh |
Migrasi data inkremental |
|
Instans sumber |
SELECT |
SELECT |
REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT |
|
Instans tujuan |
Izin baca dan tulis |
Izin baca dan tulis |
Izin baca dan tulis |
|
|
Migrasi antar instans ApsaraDB RDS for SQL Server |
Instans sumber |
SELECT |
SELECT |
Izin owner pada objek yang akan dimigrasikan. Catatan
Akun istimewa memenuhi persyaratan ini. |
|
Instans tujuan |
Izin baca dan tulis |
Izin baca dan tulis |
Izin baca dan tulis |
|
|
Migrasi antar instans ApsaraDB RDS for PostgreSQL |
Instans sumber |
Izin USAGE pada pg_catalog |
Izin SELECT pada objek yang akan dimigrasikan |
rds_superuser Catatan
|
|
Instans tujuan |
Izin CREATE dan USAGE pada objek yang akan dimigrasikan |
Izin owner pada database yang diotorisasi, termasuk INSERT, UPDATE, dan DELETE. Catatan
Akun standar untuk ApsaraDB RDS for PostgreSQL memenuhi persyaratan izin. |
Izin owner pada database yang diotorisasi, termasuk INSERT, UPDATE, dan DELETE. Catatan
Akun standar untuk ApsaraDB RDS for PostgreSQL memenuhi persyaratan izin. |
Prosedur
-
Login ke Konsol Data Transmission Service (DTS).
CatatanJika Anda diarahkan secara otomatis ke Konsol Data Management (DMS), Anda dapat mengklik ikon
di pojok kanan bawah lalu klik
untuk kembali ke konsol DTS klasik. -
Di panel navigasi sebelah kiri, klik Data Migration.
-
Di bagian atas halaman Migration Tasks, pilih wilayah tempat instans tujuan berada.
-
Di pojok kanan atas halaman, klik Create Data Migration Task.
-
Konfigurasikan database sumber dan tujuan.
Bagian
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami menyarankan menggantinya dengan nama deskriptif agar lebih mudah diidentifikasi. Nama tugas tidak perlu unik.
Source Database
Instance Type
Pilih RDS Instance.
Instance Region
Pilih wilayah tempat instans ApsaraDB RDS sumber berada.
RDS Instance ID
Pilih ID instans ApsaraDB RDS sumber.
CatatanInstans ApsaraDB RDS sumber dan tujuan dapat sama atau berbeda. Anda dapat menggunakan DTS untuk migrasi data dalam satu instans ApsaraDB RDS atau antar dua instans ApsaraDB RDS yang berbeda.
Database Name
Masukkan nama database yang akan dimigrasikan dari instans ApsaraDB RDS for PostgreSQL.
CatatanParameter ini ditampilkan dan wajib diisi hanya jika instans ApsaraDB RDS menjalankan mesin PostgreSQL.
Database Account
Masukkan akun database untuk instans ApsaraDB RDS sumber. Untuk informasi lebih lanjut tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan password untuk akun database.
CatatanSetelah Anda memasukkan informasi database sumber, Anda dapat mengklik Test Connectivity di sebelah Database Password untuk memverifikasi kebenaran informasi tersebut. Jika informasi benar, pesan Passed akan ditampilkan. Jika pesan Failed ditampilkan, klik Diagnose di sebelah pesan Failed dan sesuaikan informasi database sumber berdasarkan petunjuk yang muncul.
Connection Method
Pilih Non-encrypted atau SSL-encrypted. Jika Anda memilih SSL-encrypted, Anda harus terlebih dahulu mengaktifkan enkripsi SSL untuk instans ApsaraDB RDS. Untuk informasi lebih lanjut, lihat Enable SSL encryptionEnable SSL encryption.
CatatanParameter ini ditampilkan dan wajib diisi hanya jika instans ApsaraDB RDS menjalankan mesin MySQL.
Parameter Encryption hanya didukung di wilayah Tiongkok daratan dan China (Hong Kong).
Destination Database
Instance Type
Pilih RDS Instance.
Instance Region
Pilih wilayah tempat instans ApsaraDB RDS tujuan berada.
RDS Instance ID
Pilih ID instans ApsaraDB RDS tujuan.
CatatanInstans ApsaraDB RDS sumber dan tujuan dapat sama atau berbeda. Anda dapat menggunakan DTS untuk migrasi data dalam satu instans ApsaraDB RDS atau antar dua instans ApsaraDB RDS yang berbeda.
Database Name
Masukkan nama database tujuan di instans ApsaraDB RDS for PostgreSQL. Nama ini dapat berbeda dari nama database sumber.
CatatanParameter ini ditampilkan dan wajib diisi hanya jika instans ApsaraDB RDS menjalankan mesin PostgreSQL.
Database Account
Masukkan akun database untuk instans ApsaraDB RDS tujuan. Untuk informasi lebih lanjut tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan password untuk akun database.
CatatanSetelah Anda memasukkan informasi database tujuan, Anda dapat mengklik Test Connectivity setelah Database Password untuk memverifikasi kebenaran informasi yang dimasukkan. Jika informasi benar, pesan Passed akan ditampilkan. Jika pesan Failed ditampilkan, klik Diagnose setelah Failed dan sesuaikan informasi database tujuan berdasarkan petunjuk yang muncul.
Connection Method
Pilih Non-encrypted atau SSL-encrypted. Jika Anda memilih SSL-encrypted, Anda harus terlebih dahulu mengaktifkan enkripsi SSL untuk instans ApsaraDB RDS. Untuk informasi lebih lanjut, lihat Enable SSL encryptionEnable SSL encryption.
CatatanParameter ini ditampilkan dan wajib diisi hanya jika instans ApsaraDB RDS menjalankan mesin MySQL.
Parameter Encryption hanya didukung di wilayah Tiongkok daratan dan China (Hong Kong).
-
Setelah menyelesaikan konfigurasi, klik Set Whitelist and Next di pojok kanan bawah halaman.
DTS secara otomatis menambahkan alamat IP server DTS di wilayah yang sesuai ke daftar putih instans ApsaraDB RDS Anda. Untuk informasi lebih lanjut tentang blok alamat IP server DTS, lihat Blok alamat IP server DTS.
PeringatanMenambahkan blok CIDR publik server DTS, baik secara otomatis maupun manual, dapat menimbulkan risiko keamanan. Dengan menggunakan produk ini, Anda mengakui dan menerima risiko potensial tersebut. Anda bertanggung jawab untuk menerapkan langkah-langkah keamanan dasar, termasuk namun tidak terbatas pada penggunaan password yang kuat, membatasi port terbuka, menggunakan otentikasi untuk panggilan API internal, meninjau dan membatasi segmen jaringan yang tidak diperlukan secara berkala, atau menghubungkan melalui jaringan pribadi seperti Express Connect, VPN Gateway, atau Smart Access Gateway.
-
Pilih jenis dan objek migrasi.
Parameter
Deskripsi
Migration Type
Pilih jenis migrasi berdasarkan kebutuhan bisnis dan fitur yang didukung oleh mesin database.
-
Untuk melakukan hanya migrasi data penuh, pilih Schema Migration dan Full Data Migration.
-
Untuk migrasi data tanpa gangguan layanan, pilih Schema Migration, full data migration, dan incremental data migration.
CatatanJika Anda tidak memilih Incremental Data Migration, jangan menulis data baru ke instans ApsaraDB RDS sumber selama migrasi untuk memastikan konsistensi data.
Migration Objects
Di kotak Migration Objects, klik objek yang ingin dimigrasikan, lalu klik ikon
untuk memindahkannya ke kotak Selected Objects.Catatan-
Anda dapat memilih objek pada level database, tabel, atau kolom. Jika Anda hanya memilih tabel atau kolom, objek lain seperti view, trigger, dan stored procedure tidak akan dimigrasikan.
-
Secara default, nama objek di database tujuan sama dengan di database sumber. Untuk mengganti nama objek di database tujuan, gunakan fitur pemetaan nama objek. Untuk informasi lebih lanjut, lihat Object name mapping.
-
Menggunakan fitur pemetaan nama objek dapat menyebabkan migrasi objek dependen gagal.
Map or Rename
Untuk mengganti nama objek migrasi di database tujuan, gunakan fitur pemetaan nama objek. Untuk informasi lebih lanjut, lihat Object name mapping.
Retry Duration for Unstable Connections
Ketika koneksi ke database sumber atau tujuan tidak stabil, DTS mencoba menghubungkan ulang selama 720 menit (12 jam) secara default. Anda dapat menyesuaikan durasi ini. Jika DTS berhasil terhubung kembali dalam waktu yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
CatatanAnda dikenai biaya untuk instans DTS selama periode percobaan koneksi ulang. Kami menyarankan Anda menyesuaikan durasi percobaan ulang berdasarkan kebutuhan bisnis atau segera melepaskan instans DTS setelah instans sumber dan tujuan dilepaskan.
-
-
Setelah menyelesaikan pengaturan ini, klik Pre-check and Start di pojok kanan bawah halaman.
Catatan-
DTS melakukan Pemeriksaan Awal sebelum tugas dimulai. Tugas hanya dapat dimulai setelah lulus Pemeriksaan Awal.
-
Jika Pemeriksaan Awal gagal, klik ikon
di sebelah item yang gagal untuk melihat detailnya.-
Perbaiki masalah berdasarkan detail tersebut, lalu jalankan Pemeriksaan Awal lagi.
-
Untuk peringatan yang tidak memerlukan perbaikan, Anda dapat memilih Ignore atau Ignore and Rerun Precheck untuk menjalankan Pemeriksaan Awal lagi.
-
-
-
Setelah tugas lulus Pemeriksaan Awal, klik Next.
-
Di halaman Confirm Order, pilih Instance Class dan centang kotak Data Transmission Service (Pay-As-You-Go) Terms of Service.
-
Klik Buy and Start. Tugas migrasi dimulai.
-
Migrasi data penuh
Jangan hentikan tugas secara manual. Tunggu hingga selesai secara otomatis untuk menghindari kehilangan data.
-
Migrasi data inkremental
Tugas tidak berhenti secara otomatis. Anda harus menghentikannya secara manual saat sudah siap.
CatatanKami menyarankan Anda menghentikan tugas selama jam sepi atau saat Anda siap memindahkan beban kerja ke instans tujuan.
-
Tunggu hingga status tugas berubah menjadi Incremental Data Migration dan menunjukkan Undelayed. Kemudian, hentikan penulisan data ke database sumber selama beberapa menit. Status Incremental Data Migration mungkin menunjukkan latensi.
-
Tunggu hingga status Incremental Data Migration kembali menjadi Undelayed. Lalu, hentikan tugas migrasi secara manual. Progres migrasi skema dan migrasi data penuh keduanya menunjukkan 100%. Untuk menjeda tugas migrasi, pilih tugas tersebut dan klik Pause di bilah operasi batch di bagian bawah.
-
-