Gunakan Data Transmission Service (DTS) untuk memigrasikan data dari instans ApsaraDB RDS for PostgreSQL ke instans ApsaraDB RDS for MySQL. DTS mendukung migrasi data penuh dan inkremental guna memungkinkan migrasi database tanpa downtime.
Database sumber dan tujuan
DTS mendukung migrasi dari PostgreSQL ke MySQL dalam skenario berikut. Topik ini menggunakan contoh migrasi dari instans ApsaraDB RDS for PostgreSQL ke instans ApsaraDB RDS for MySQL.
Migrasikan data dari instans ApsaraDB RDS for PostgreSQL ke instans ApsaraDB RDS for MySQL.
Migrasikan data dari database PostgreSQL yang dikelola sendiri ke database MySQL yang dikelola sendiri.
Prasyarat
Buat instans sumber ApsaraDB RDS for PostgreSQL dan instans tujuan ApsaraDB RDS for MySQL. Buat instans ApsaraDB RDS for PostgreSQL dan Buat Cepat instans ApsaraDB RDS for MySQL.
CatatanUntuk informasi mengenai versi database sumber dan tujuan yang didukung, lihat Ikhtisar skenario migrasi.
Instans tujuan ApsaraDB RDS for MySQL harus memiliki ruang penyimpanan lebih besar daripada yang digunakan oleh instans sumber ApsaraDB RDS for PostgreSQL.
Batasan
Selama migrasi skema, DTS memigrasikan kunci asing dari database sumber ke database tujuan.
Selama migrasi data penuh dan migrasi data inkremental, DTS secara sementara menonaktifkan pemeriksaan constraint dan operasi cascading kunci asing pada tingkat sesi. Jika terjadi operasi cascading update atau delete di database sumber saat tugas berjalan, ketidakkonsistenan data dapat terjadi.
Jenis | Deskripsi |
Batasan database sumber |
|
Batasan lainnya |
|
Harga
Jenis migrasi | Biaya konfigurasi link | Biaya lalu lintas jaringan publik |
Migrasi struktur dan migrasi data penuh | Tidak dikenakan biaya. | Biaya berlaku untuk data yang dimigrasikan dari Alibaba Cloud melalui jaringan publik. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
Migrasi data inkremental | Dikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
Jenis migrasi
Migrasi skema
Data Transmission Service (DTS) memigrasikan definisi skema objek migrasi dari database sumber ke database tujuan.
DTS mendukung migrasi skema untuk tabel, view, trigger, prosedur tersimpan, dan fungsi.
Catatanroutine_bodydari prosedur tersimpan,routine_bodydari fungsi, danselect_statementdari view tidak dimodifikasi.Selama migrasi skema, DTS mengubah `DEFINER` menjadi `INVOKER` untuk view, prosedur tersimpan, dan fungsi yang akan dimigrasikan. Tindakan ini mengubah nilai `SQL SECURITY` menjadi `INVOKER`. DTS juga mengatur `DEFINER` ke akun database tujuan yang digunakan untuk tugas migrasi.
CatatanMetode otentikasi keamanan dan definer dari database sumber tidak dimodifikasi.
Karena DTS tidak memigrasikan informasi pengguna, Anda harus memberikan izin baca dan tulis kepada invoker untuk memanggil view, prosedur tersimpan, dan fungsi di database tujuan.
Migrasi penuh
DTS memigrasikan semua data historis dari objek migrasi yang ditentukan dari database sumber ke database tujuan.
Migrasi inkremental
Setelah migrasi penuh selesai, DTS memigrasikan pembaruan data inkremental dari database sumber ke database tujuan. Migrasi inkremental memungkinkan Anda memigrasikan data secara lancar tanpa mengganggu aplikasi yang dikelola sendiri.
Operasi SQL untuk migrasi inkremental
Jenis operasi | Pernyataan SQL |
DML | INSERT, UPDATE, dan DELETE |
Persyaratan izin untuk akun database
Database | Migrasi data penuh | Migrasi data inkremental | Aksi |
Instans ApsaraDB RDS for PostgreSQL | Izin SELECT pada objek yang akan dimigrasikan. | Akun istimewa yang memiliki database yang dipilih. Catatan Untuk migrasi DML inkremental dari instans sumber ApsaraDB RDS for PostgreSQL 9.4, hanya diperlukan izin REPLICATION. | Buat akun dan buat database. |
Instans ApsaraDB RDS for MySQL | Izin baca dan tulis | ||
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 dapat 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.
Opsi: Di pojok kanan atas halaman, klik New Configuration Page.
CatatanJika 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 merekomendasikan Anda menggunakan halaman konfigurasi baru.
Konfigurasikan database sumber dan tujuan.
PeringatanSetelah memilih instans sumber dan tujuan, baca Limits di bagian atas halaman untuk memastikan tugas migrasi dapat dibuat dan dijalankan dengan sukses.
Kategori
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami merekomendasikan Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tidak perlu unik.
Source Database
Database Type
Pilih PostgreSQL.
Connection Type
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah instans sumber ApsaraDB RDS for PostgreSQL.
Instance ID
Pilih ID instans dari instans sumber ApsaraDB RDS for PostgreSQL.
Database Name
Masukkan nama database sumber di instans ApsaraDB RDS for PostgreSQL yang berisi objek yang akan dimigrasikan.
Database Account
Masukkan akun database untuk instans sumber ApsaraDB RDS for PostgreSQL. Izin yang diperlukan tercantum dalam Persyaratan izin untuk akun database.
Database Password
Masukkan password untuk akun database.
Encryption
Pilih metode koneksi. Dalam contoh ini, Non-encrypted dipilih.
Jika Anda perlu menghubungkan ke database menggunakan enkripsi SSL, pilih SSL-encrypted, lalu unggah CA Certificate, Client Certificate, dan Private Key of Client Certificate sesuai kebutuhan. Kemudian, masukkan Private Key Password of Client Certificate.
CatatanJika Anda memilih SSL-encrypted untuk database PostgreSQL yang dikelola sendiri, Anda harus mengunggah CA Certificate.
Jika Anda perlu menggunakan sertifikat klien, Anda harus mengunggah Client Certificate dan Private Key of Client Certificate, lalu masukkan Private Key Password of Client Certificate.
Untuk informasi tentang fitur enkripsi SSL untuk instans RDS for PostgreSQL, lihat Enkripsi koneksi SSL.
Destination Database
Database Type
Pilih MySQL.
Connection Type
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah instans tujuan ApsaraDB RDS for MySQL.
RDS Instance ID
Pilih ID instans dari instans tujuan ApsaraDB RDS for MySQL.
Database Account
Masukkan akun database untuk instans tujuan ApsaraDB RDS for MySQL. Izin yang diperlukan tercantum dalam Persyaratan izin 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.
Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.
CatatanPastikan blok CIDR alamat IP server DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Hal ini dapat dilakukan secara otomatis atau manual. Untuk informasi lebih lanjut, lihat Tambahkan blok CIDR alamat IP server DTS ke daftar putih.
Jika database sumber atau tujuan adalah database yang dikelola sendiri (di mana Access Method bukan Alibaba Cloud Instance), Anda juga harus mengklik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.
Konfigurasikan objek tugas.
Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.
Parameter
Deskripsi
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.
CatatanJika 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.
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, kesalahan dilaporkan selama pemeriksaan awal, dan tugas migrasi data tidak dimulai.
CatatanJika tabel di database tujuan memiliki nama yang sama tetapi tidak dapat dihapus atau diganti namanya dengan mudah, Anda dapat mengubah nama tabel di database tujuan. Untuk informasi lebih lanjut, lihat Pemetaan nama objek.
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 mungkin gagal. Lakukan dengan hati-hati.
Source Objects
Di panel Source Objects, pilih objek yang ingin Anda sinkronkan, lalu klik
untuk memindahkannya ke panel 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 akan 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 Pemetaan 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 Pemetaan nama skema, tabel, dan kolom ganda.
CatatanPemetaan nama objek dapat menyebabkan kegagalan migrasi untuk objek dependen.
Untuk memfilter data dengan klausa WHERE, klik kanan tabel di bagian Selected Objects dan tentukan kondisi filter. Tetapkan kondisi filter.
Untuk memilih operasi SQL untuk migrasi pada tingkat database atau tabel, klik kanan objek migrasi di bagian Selected Objects dan pilih operasinya.
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 kesalahan dan segera mulai mencoba menghubungkan kembali. Durasi percobaan ulang default adalah 720 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 10 hingga 1440 menit. Kami merekomendasikan Anda mengatur durasi lebih dari 30 menit. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam durasi yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
CatatanUntuk 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 merekomendasikan Anda menyesuaikan waktu percobaan ulang berdasarkan kebutuhan bisnis Anda, atau segera merilis instans DTS setelah instans database sumber dan tujuan dirilis.
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 mengulangi operasi tersebut. Durasi percobaan ulang default adalah 10 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 1 hingga 1440 menit. Kami merekomendasikan Anda mengatur durasi lebih dari 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
PentingNilai Retry Time for Other Issues harus lebih kecil 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.
CatatanItem 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.
CatatanItem 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
Opsi. Pilih tag lingkungan untuk mengidentifikasi instans.
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 ambang batas peringatan dan pemberitahuan peringatan. Jika migrasi gagal atau latensi melebihi ambang batas, sistem akan mengirimkan pemberitahuan peringatan.
Klik Next: Data Validation untuk mengonfigurasi tugas validasi data.
Jika Anda ingin menggunakan fitur validasi data, lihat Konfigurasi validasi data untuk petunjuk konfigurasi.
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 gelembung yang muncul.
Jika Anda tidak perlu melihat atau telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum tugas migrasi dimulai, DTS melakukan pemeriksaan awal. Tugas hanya akan 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 melewatkan 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 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 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.
CatatanJika 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 akan berhenti secara otomatis. Tugas migrasi inkremental akan terus berjalan. Selama tugas migrasi inkremental berjalan, Status tugas adalah Running.