Layanan Transmisi Data (Data Transmission Service/DTS) mendukung migrasi data dari instans ApsaraDB RDS for MySQL ke AnalyticDB for PostgreSQL.
Database sumber yang didukung
Anda dapat melakukan migrasi data dari jenis database sumber MySQL berikut ke instans AnalyticDB for PostgreSQL:
-
Instans ApsaraDB RDS for MySQL
-
Database MySQL yang dikelola sendiri:
-
Database yang dikelola sendiri dengan alamat IP publik
-
Database yang dikelola sendiri pada instance ECS
-
Database yang dikelola sendiri yang terhubung melalui Database Gateway
-
Database yang dikelola sendiri yang terhubung melalui CEN
-
Database yang dikelola sendiri yang terhubung melalui Express Connect, VPN Gateway, atau Smart Access Gateway
-
Topik ini menggunakan contoh instans ApsaraDB RDS for MySQL untuk mengilustrasikan prosedur konfigurasi. Prosedurnya serupa untuk jenis database sumber lainnya.
Prasyarat
-
Anda telah membuat instans tujuan AnalyticDB for PostgreSQL. Untuk detailnya, lihat Buat instans.
-
Ruang penyimpanan instans tujuan AnalyticDB for PostgreSQL harus melebihi ruang penyimpanan yang digunakan oleh instans sumber ApsaraDB RDS for MySQL.
Catatan penggunaan
-
DTS melakukan migrasi foreign key selama migrasi skema.
-
Selama migrasi data penuh dan inkremental, DTS secara sementara menonaktifkan pemeriksaan constraint dan cascade foreign key pada tingkat session. Pembaruan atau penghapusan cascade pada database sumber saat tugas berjalan dapat menyebabkan ketidakkonsistenan data.
|
Jenis |
Deskripsi |
|
Batasan pada database sumber |
|
|
Batasan lainnya |
|
|
Kasus khusus |
|
Penagihan
|
Jenis migrasi |
Biaya konfigurasi instans |
Biaya lalu lintas Internet |
|
Migrasi skema dan migrasi data penuh |
Gratis. |
Ketika parameter Access Method dari database tujuan diatur ke Public IP Address, Anda akan dikenai biaya untuk lalu lintas internet. Untuk informasi selengkapnya, lihat Ringkasan penagihan. |
|
Migrasi data inkremental |
Dikenai biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
Jenis migrasi
-
Migrasi skema
DTS melakukan migrasi skema objek migrasi dari database sumber ke database tujuan.
CatatanDalam migrasi skema antar database heterogen, tipe data mungkin tidak dipetakan secara sempurna. Kami menyarankan Anda mengevaluasi secara cermat dampak bisnis dari pemetaan tipe data. Untuk informasi lebih lanjut, lihat Pemetaan tipe data untuk database heterogen.
-
Migrasi data penuh
DTS melakukan migrasi semua data yang ada untuk objek migrasi dari database sumber ke database tujuan.
-
Migrasi data inkremental
Setelah migrasi data penuh, DTS mereplikasi pembaruan data inkremental dari database sumber ke database tujuan. Hal ini memungkinkan migrasi data yang lancar untuk aplikasi yang dikelola sendiri, meminimalkan gangguan layanan.
Operasi SQL untuk migrasi inkremental
|
Jenis operasi |
Pernyataan SQL |
|
DML |
INSERT, UPDATE, dan DELETE Catatan
Sistem secara otomatis mengonversi pernyataan UPDATE menjadi pernyataan REPLACE INTO saat menulis ke instans tujuan AnalyticDB for PostgreSQL. Jika pernyataan UPDATE memodifikasi primary key, sistem mengonversinya menjadi pernyataan DELETE dan INSERT. |
|
DDL |
ALTER TABLE |
Jika tipe data kolom di tabel sumber berubah selama migrasi data, tugas migrasi data melaporkan error dan berhenti. Ikuti langkah-langkah berikut untuk memperbaiki masalah secara manual:
-
Asumsikan tugas migrasi data ke instans tujuan AnalyticDB for PostgreSQL gagal karena perubahan tipe data di tabel sumber, seperti tabel
customer. -
Di instans AnalyticDB for PostgreSQL Anda, buat tabel baru, seperti
customer_new, dengan skema yang sama seperti tabelcustomer. -
Jalankan perintah
INSERT INTO ... SELECTuntuk menyalin data daricustomerkecustomer_new. Pastikan data di kedua tabel konsisten. -
Ubah nama atau hapus tabel
customeryang gagal, lalu ubah namacustomer_newmenjadicustomer. -
Di Konsol DTS, restart tugas migrasi data.
Izin akun database
|
Database |
Migrasi skema |
Migrasi penuh |
Migrasi inkremental |
|
ApsaraDB RDS for MySQL |
Izin SELECT |
Izin SELECT |
Izin REPLICATION SLAVE, REPLICATION CLIENT, dan SELECT pada objek yang akan dimigrasikan. DTS secara otomatis memberikan izin ini ke akun database. |
|
AnalyticDB for PostgreSQL |
izin baca dan tulis |
||
Untuk mempelajari cara membuat dan memberi otorisasi akun database, lihat topik berikut:
-
Untuk instans ApsaraDB RDS for MySQL: Buat akun dan Modifikasi izin akun standar pada instans ApsaraDB RDS for MySQL.
-
Untuk instans AnalyticDB for PostgreSQL: Buat dan kelola akun database.
Prosedur
-
Buka halaman daftar tugas migrasi untuk wilayah tujuan menggunakan salah satu metode berikut.
Dari Konsol DTS
-
Login 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 mungkin berbeda tergantung pada mode dan tata letak Konsol DMS. Untuk informasi lebih lanjut, lihat Konsol mode sederhana dan Sesuaikan tata letak dan gaya Konsol DMS.
-
Login 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.
-
Konfigurasikan database sumber dan tujuan.
Bagian
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami menyarankan Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tidak perlu unik.
Source Database
Database Type
Pilih MySQL.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans sumber ApsaraDB RDS for MySQL berada.
Cross-account
Contoh ini menunjukkan migrasi data dalam satu Akun Alibaba Cloud. Untuk skenario ini, pilih No.
RDS Instance ID
Pilih ID instans sumber ApsaraDB RDS for MySQL.
Database Account
Masukkan akun database instans sumber ApsaraDB RDS for MySQL. Untuk informasi lebih lanjut tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan password untuk akun database.
Connection Method
Pilih Non-encrypted atau SSL-encrypted berdasarkan kebutuhan database Anda. Jika Anda mengatur parameter ini ke SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instans RDS for MySQL terlebih dahulu. Untuk informasi lebih lanjut, lihat Aktifkan enkripsi SSL dengan cepat menggunakan sertifikat cloud.
Destination Database
Database Type
Pilih AnalyticDB for PostgreSQL.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans tujuan AnalyticDB for PostgreSQL berada.
Instance ID
Pilih ID instans tujuan AnalyticDB for PostgreSQL.
Database Name
Masukkan nama database tujuan pada instans AnalyticDB for PostgreSQL.
Database Account
Masukkan akun awal instans tujuan AnalyticDB for PostgreSQL.
CatatanAnda juga dapat memasukkan akun yang memiliki izin RDS_SUPERUSER. Untuk informasi lebih lanjut, lihat Pengelolaan izin pengguna.
Database Password
Masukkan password untuk akun database.
-
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 Tambahkan alamat IP server DTS ke daftar putih.
-
Jika database sumber atau tujuan adalah database yang dikelola sendiri (parameter 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 Anda 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, Anda harus memastikan bahwa 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, jangan menulis data baru ke instans sumber selama migrasi data untuk memastikan konsistensi data.
Select DDL and DML to Sync at the Instance Level
Pilih operasi SQL yang ingin Anda migrasikan secara inkremental pada tingkat instans. Untuk informasi lebih lanjut tentang operasi yang didukung, lihat Operasi SQL yang didukung untuk migrasi inkremental.
CatatanUntuk memilih operasi SQL pada tingkat database atau tabel, klik kanan objek migrasi di bagian Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog.
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 berhasil. Jika ada tabel dengan nama yang sama, error 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 Pemetaan nama objek.
-
Ignore Errors and Proceed: Melewati pemeriksaan adanya 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 mempertahankan catatan di database tujuan; catatan dari database sumber tidak dimigrasikan.
-
Selama migrasi inkremental, DTS tidak mempertahankan catatan di database tujuan; catatan dari database sumber akan menimpa catatan yang ada di database tujuan.
-
-
Jika skema tabel tidak konsisten, hanya beberapa kolom data yang mungkin dimigrasikan, atau migrasi mungkin gagal. Lakukan dengan hati-hati.
-
Storage Engine Type
Pilih mesin penyimpanan untuk tabel tujuan berdasarkan kebutuhan bisnis Anda. Nilai default adalah Beam.
CatatanParameter ini tersedia hanya jika instans tujuan AnalyticDB for PostgreSQL memiliki versi kernel v7.0.6.6 atau lebih baru dan Anda memilih Migration Types untuk parameter Schema Migration.
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 Petakan nama skema, tabel, dan kolom individual.
-
Untuk mengubah nama beberapa objek migrasi di instans target, klik Selected Objects di pojok kanan atas kotak Batch Edit. Untuk informasi lebih lanjut, lihat Petakan beberapa nama skema, tabel, dan kolom.
Catatan-
Untuk memilih operasi SQL pada tingkat database atau tabel, klik kanan objek migrasi di bagian Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog.
-
Untuk menentukan kondisi WHERE untuk memfilter data, klik kanan tabel di bagian Selected Objects dan tentukan kondisinya di kotak dialog. Untuk informasi lebih lanjut, lihat Atur kondisi filter.
-
Jika Anda mengganti nama objek menggunakan fitur pemetaan nama, migrasi objek dependen mungkin gagal.
-
-
Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas pada kluster bersama. Anda tidak perlu memilihnya. Jika Anda menginginkan tugas yang lebih stabil, Anda dapat membeli klaster khusus untuk menjalankan tugas migrasi DTS.
Retry Time for Failed Connections
Setelah tugas migrasi dimulai, jika koneksi ke database sumber atau tujuan gagal, DTS melaporkan error dan segera mulai mencoba koneksi ulang. Durasi percobaan ulang default adalah 720 menit. Anda dapat menyesuaikan durasi percobaan ulang ke nilai antara 10 hingga 1440 menit. Kami menyarankan Anda mengatur durasi lebih dari 30 menit. Jika DTS berhasil 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 lepas instans DTS setelah instans database sumber dan tujuan dilepas.
Retry Time for Other Issues
Setelah tugas migrasi dimulai, jika terjadi masalah non-konektivitas, seperti exception eksekusi DDL atau DML, pada database sumber atau tujuan, DTS melaporkan error dan segera mulai mencoba operasi ulang. Durasi percobaan ulang default adalah 10 menit. Anda dapat menyesuaikan durasi percobaan ulang ke nilai antara 1 hingga 1440 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 pada 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.
Enclose Object Names in Quotation Marks
Tentukan apakah akan mengapit nama objek dengan tanda kutip.
-
Pilih Yes: Jika database sumber memenuhi persyaratan berikut, DTS secara otomatis mengapit nama skema, tabel, atau kolom dengan tanda kutip tunggal (') atau ganda (") selama migrasi skema dan migrasi data inkremental.
-
Database sumber peka huruf besar/kecil, dan nama objek menggunakan campuran huruf besar dan kecil.
-
Nama tabel sumber diawali dengan karakter non-alfabet atau berisi karakter selain huruf, angka, atau karakter khusus yang didukung.
CatatanHanya karakter khusus berikut yang didukung: underscore (_), tanda pagar (#), dan tanda dolar ($).
-
Nama skema, tabel, atau kolom yang ingin Anda migrasikan merupakan kata kunci, kata cadangan, atau karakter tidak valid di database tujuan.
-
-
Pilih No: DTS tidak mengapit nama objek dengan tanda kutip.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Pilih apakah akan menulis informasi SQL heartbeat ke database sumber saat instans DTS berjalan.
-
Yes: Informasi SQL heartbeat tidak ditulis ke database sumber. Hal ini dapat menyebabkan instans DTS melaporkan delay.
-
No: Menulis informasi SQL heartbeat ke database sumber. Hal ini dapat mengganggu fitur seperti backup fisik dan cloning database sumber.
Environment Tag
Anda dapat memilih tag lingkungan untuk mengidentifikasi instans berdasarkan kebutuhan bisnis Anda. Dalam contoh ini, Anda tidak perlu mengonfigurasi parameter ini.
Configure ETL
Pilih apakah akan mengaktifkan fitur extract, transform, and load (ETL). Untuk informasi lebih lanjut, lihat Apa itu ETL? Nilai yang valid:
-
Yes: Mengaktifkan fitur ETL. Masukkan pernyataan pemrosesan data di editor kode. Untuk informasi lebih lanjut, lihat Konfigurasikan ETL dalam tugas migrasi data atau sinkronisasi data.
-
No: Menonaktifkan 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 ambang batas peringatan dan pemberitahuan peringatan. Jika migrasi gagal atau latensi melebihi ambang batas, sistem mengirimkan pemberitahuan peringatan.
-
-
Klik Next: Data Validation untuk mengonfigurasi tugas validasi data.
Untuk informasi lebih lanjut tentang fitur validasi data, lihat Konfigurasikan validasi data.
-
Opsional: Konfigurasikan field tabel dan kolom. Tentukan Primary Key Column dan Distribution Key untuk tabel yang akan dimigrasikan ke instans tujuan AnalyticDB for PostgreSQL. Untuk informasi lebih lanjut, lihat CREATE TABLE.
CatatanLangkah ini tersedia hanya jika Anda memilih Schema Migration saat mengonfigurasi objek migrasi.
-
-
Simpan tugas dan jalankan pemeriksaan awal.
-
Untuk melihat parameter konfigurasi instans ini saat 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 lulus pemeriksaan awal.
-
Jika pemeriksaan awal gagal, klik View Details di sebelah item pemeriksaan yang gagal, perbaiki masalah berdasarkan petunjuk, lalu jalankan kembali pemeriksaan awal.
-
Jika peringatan dilaporkan selama pemeriksaan awal:
-
Untuk item pemeriksaan yang tidak dapat diabaikan, klik View Details di sebelah item yang gagal, perbaiki masalah berdasarkan petunjuk, lalu jalankan kembali pemeriksaan awal.
-
Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again untuk melewati item peringatan dan menjalankan kembali pemeriksaan awal. 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 kelompok sumber daya default. Untuk informasi lebih lanjut, lihat Apa itu Pengelolaan Sumber Daya?
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 Spesifikasi link migrasi data.
-
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.
-
-