Layanan Transmisi Data (DTS) memungkinkan migrasi data antar kluster PolarDB for PostgreSQL (Compatible with Oracle).
Prasyarat
Kluster sumber dan tujuan PolarDB for PostgreSQL (Compatible with Oracle) harus sudah tersedia. Untuk informasi lebih lanjut, lihat Buat kluster PolarDB for PostgreSQL (Kompatibel dengan Oracle).
Pada kluster sumber PolarDB for PostgreSQL (Compatible with Oracle), parameter wal_level harus diatur ke logical. Pengaturan ini menambahkan informasi yang diperlukan untuk logical decoding ke dalam write-ahead logging (WAL). Untuk informasi lebih lanjut, lihat Konfigurasikan parameter kluster.
Catatan penggunaan
-
DTS memigrasikan kunci asing selama migrasi skema.
-
Selama migrasi data penuh dan inkremental, DTS secara sementara menonaktifkan pemeriksaan constraint dan cascade kunci asing pada tingkat sesi. Pembaruan atau penghapusan cascade pada database sumber saat tugas berjalan dapat menyebabkan ketidakkonsistenan data.
|
Jenis |
Deskripsi |
|
Batasan database sumber |
|
|
Batasan lainnya |
|
Penagihan
|
Jenis migrasi |
Biaya konfigurasi instans |
Biaya lalu lintas Internet |
|
Migrasi skema dan migrasi data penuh |
Gratis. |
Ketika parameter Access Method database tujuan diatur ke Public IP Address, Anda akan dikenai biaya lalu lintas Internet. Untuk informasi selengkapnya, lihat Ringkasan penagihan. |
|
Migrasi data inkremental |
Dikenai biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
Jenis migrasi
Jenis migrasi | Deskripsi |
Migrasi skema | DTS memigrasikan skema objek ke database tujuan. DTS mendukung migrasi skema untuk jenis objek berikut: tabel, view, sinonim, prosedur tersimpan, fungsi tersimpan, paket, dan tipe yang ditentukan pengguna. Catatan DTS tidak mendukung migrasi skema untuk trigger. Kami merekomendasikan menghapus trigger dari database sumber untuk mencegah ketidakkonsistenan data. Untuk informasi lebih lanjut, lihat Konfigurasikan tugas sinkronisasi atau migrasi data untuk database sumber yang berisi trigger. |
Migrasi data penuh | DTS memigrasikan data historis dari database sumber ke database tujuan. Catatan Jangan lakukan operasi DDL pada objek migrasi sebelum migrasi skema dan migrasi data penuh selesai. Jika dilakukan, tugas migrasi mungkin gagal. |
Migrasi data inkremental | Setelah migrasi data penuh selesai, DTS menangkap pembaruan data inkremental dari redo log database sumber dan memigrasikannya ke database tujuan. Migrasi data inkremental memungkinkan migrasi lancar dengan downtime aplikasi minimal. |
Objek yang didukung
| Objek | Detail |
|---|---|
| SCHEMA, TABLE | Termasuk PRIMARY KEY, UNIQUE KEY, FOREIGN KEY, tipe data bawaan, dan DEFAULT CONSTRAINT |
| VIEW, PROCEDURE | Memerlukan PostgreSQL versi 11 atau lebih baru. Dukungan bervariasi tergantung jenis database tujuan—periksa Konsol untuk detailnya |
SQL yang didukung untuk migrasi inkremental
Jenis operasi | Pernyataan SQL |
DML | INSERT, UPDATE, dan DELETE |
DDL |
|
Persyaratan izin untuk akun database
Database | Persyaratan izin |
Kluster sumber PolarDB for PostgreSQL (Compatible with Oracle) | Akun istimewa. |
Kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle) | Izin Database owner. Penting Anda menentukan database owner saat membuat database. |
Untuk membuat akun database dan memberikan izin:
Untuk kluster PolarDB for PostgreSQL (Compatible with Oracle), lihat Buat akun database.
Prosedur
-
Buka halaman daftar tugas migrasi untuk wilayah tujuan menggunakan salah satu metode berikut.
Dari Konsol DTS
-
Login ke Konsol Layanan Transmisi Data (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 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.
PeringatanSetelah memilih instans sumber dan tujuan, kami merekomendasikan agar Anda membaca dengan cermat batasan yang ditampilkan di bagian atas halaman. Jika tidak, tugas mungkin gagal atau terjadi ketidakkonsistenan data.
Bagian
Parameter
Deskripsi
Tidak berlaku
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami merekomendasikan agar Anda menentukan nama deskriptif untuk memudahkan identifikasi. 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 PolarDB (Compatible with Oracle).
Connection Type
Pilih Public IP Address.
Instance Region
Pilih wilayah tempat kluster sumber PolarDB for PostgreSQL (Compatible with Oracle) berada.
Data Sources
Single Data Source: Opsi ini mengharuskan Anda menentukan Domain Name or IP Address dan Port Number node primer di kluster sumber PolarDB for PostgreSQL (Compatible with Oracle).
Multiple Data Sources: Opsi ini mengharuskan Anda juga memasukkan alamat IP dan nomor port beberapa node, termasuk node primer, di kluster sumber PolarDB for PostgreSQL (Compatible with Oracle) di bidang IP:Port of Data Sources.
CatatanJika Anda memilih Multiple Data Sources dan mengonfigurasi parameter IP:Port of Data Sources, DTS dapat secara otomatis melakukan failover ke node primer baru jika terjadi alih bencana primer/sekunder di kluster PolarDB for PostgreSQL (Compatible with Oracle). Fitur ini mendukung skenario pemulihan bencana.
Dalam contoh ini, Single Data Source dipilih.
Domain Name or IP Address
Masukkan titik akhir node primer di kluster sumber PolarDB for PostgreSQL (Compatible with Oracle).
CatatanAnda dapat menjalankan perintah
pingdi komputer Anda untuk mendapatkan alamat IP titik akhir koneksi langsung kluster PolarDB for PostgreSQL (Compatible with Oracle) target.Port Number
Masukkan port layanan database sumber. Nilai default adalah 1521.
CatatanDalam contoh ini, port layanan ini harus dapat diakses dari internet.
IP:Port of Data Sources
Masukkan alamat IP dan nomor port beberapa node di kluster sumber PolarDB for PostgreSQL (Compatible with Oracle). Pisahkan beberapa entri dengan koma (,).
Oracle Type
Non-RAC Instance: Opsi ini mengharuskan Anda menentukan SID.
RAC or PDB Instance: Opsi ini mengharuskan Anda menentukan Service Name.
Dalam contoh ini, Non-RAC Instance dipilih.
Database Name
Masukkan nama database yang berisi objek migrasi di kluster sumber PolarDB for PostgreSQL (Oracle Compatible).
Database Account
Masukkan akun database untuk kluster sumber PolarDB for PostgreSQL (Compatible with Oracle). Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan password untuk akun database.
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 PolarDB (Compatible with Oracle).
Connection Type
Pilih Public IP Address.
Instance Region
Pilih wilayah tempat kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle) berada.
Data Sources
Single Data Source: Opsi ini mengharuskan Anda menentukan Domain Name or IP Address dan Port Number node primer di kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle).
Multiple Data Sources: Opsi ini mengharuskan Anda juga memasukkan alamat IP dan nomor port beberapa node, termasuk node primer, di kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle) di bidang IP:Port of Data Sources.
CatatanJika Anda memilih Multiple Data Sources dan mengonfigurasi parameter IP:Port of Data Sources, DTS dapat secara otomatis melakukan failover ke node primer baru jika terjadi alih bencana primer/sekunder di kluster PolarDB for PostgreSQL (Compatible with Oracle). Fitur ini mendukung skenario pemulihan bencana.
Dalam contoh ini, Single Data Source dipilih.
Domain Name or IP Address
Masukkan titik akhir node primer di kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle).
CatatanAnda dapat menjalankan perintah
pingdi komputer Anda untuk mendapatkan alamat IP titik akhir koneksi langsung kluster PolarDB for PostgreSQL (Compatible with Oracle) target.Port Number
Masukkan port layanan database tujuan. Nilai default adalah 1521.
IP:Port of Data Sources
Masukkan alamat IP dan nomor port beberapa node di kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle). Pisahkan beberapa entri dengan koma (,).
Database Name
Masukkan nama database di kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle) tempat objek akan dimigrasikan.
Database Account
Masukkan akun database untuk kluster tujuan PolarDB for PostgreSQL (Compatible with Oracle). Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan password untuk akun database.
-
-
Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.
Catatan-
Pastikan 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, atur objek yang ingin dimigrasikan.
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.
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 Pemetaan nama objek.
-
Ignore Errors and Proceed: Melewati 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 kotak Source Objects, klik objek yang akan dimigrasikan, lalu klik
untuk memindahkannya ke kotak Selected Objects.Catatan-
Anda dapat memilih objek pada tingkat skema atau tabel. Jika Anda memilih tabel, objek lain seperti view, trigger, dan prosedur tersimpan tidak dimigrasikan.
-
Jika tabel yang akan dimigrasikan berisi kolom bertipe SERIAL dan Anda telah memilih Migration Types untuk Schema Migration, pilih juga Sequence atau migrasikan seluruh skema.
Selected Objects
-
Untuk mengubah nama satu objek migrasi di instans target, klik kanan objek tersebut di kotak Selected Objects. Untuk informasi selengkapnya, lihat Memetakan 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.
CatatanJika Anda menggunakan fitur pemetaan nama objek, migrasi objek lain yang bergantung pada objek yang diganti namanya mungkin gagal.
Untuk mengatur kondisi WHERE untuk memfilter data, klik kanan tabel di kotak Selected Objects dan tentukan kondisi filter di kotak dialog yang muncul. Untuk informasi lebih lanjut, lihat Atur kondisi filter.
Untuk memilih operasi SQL mana yang akan dimigrasikan pada tingkat database atau tabel, klik kanan objek migrasi di kotak Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog yang muncul.
-
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 coba ulang default adalah 720 menit. Anda dapat menyesuaikan waktu coba ulang ke nilai antara 10 hingga 1.440 menit. Kami merekomendasikan agar 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.
Catatan-
Untuk beberapa instans DTS yang berbagi sumber atau tujuan yang sama, waktu coba ulang jaringan ditentukan oleh pengaturan tugas yang terakhir dibuat.
-
Karena Anda dikenai biaya untuk tugas selama periode coba ulang koneksi, kami merekomendasikan agar Anda menyesuaikan waktu coba ulang berdasarkan kebutuhan bisnis Anda, atau segera melepas instans DTS setelah instans database sumber dan tujuan dilepas.
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 mengulang operasi tersebut. Durasi coba ulang default adalah 10 menit. Anda dapat menyesuaikan waktu coba ulang ke nilai antara 1 hingga 1.440 menit. Kami merekomendasikan agar Anda mengatur durasi lebih dari 10 menit. Jika operasi terkait berhasil dalam durasi coba ulang yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan 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 hanya tersedia 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 hanya tersedia 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, Anda tidak perlu mengonfigurasi parameter ini.
Configure ETL
Pilih apakah akan mengaktifkan fitur ekstrak, transformasi, dan muat (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 akan mengirimkan pemberitahuan peringatan.
-
-
Klik Next: Data Validation untuk mengonfigurasi tugas validasi data.
Untuk informasi lebih lanjut tentang fitur validasi data, lihat Konfigurasikan validasi data.
-
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.
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 petunjuk, 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 petunjuk, lalu jalankan pemeriksaan awal lagi.
-
Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again untuk melewati 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 tautan 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 Manajemen Sumber Daya?
Instance Class
DTS menyediakan spesifikasi migrasi dengan tingkat kinerja berbeda. Spesifikasi tautan memengaruhi kecepatan migrasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi lebih lanjut, lihat Spesifikasi tautan 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 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.
-
-