Dokumen ini menjelaskan cara melakukan migrasi instans MyBase for PostgreSQL ke instans ApsaraDB RDS for PostgreSQL menggunakan Cloud Migration.
Prasyarat
Buat instans ApsaraDB RDS for PostgreSQL yang memenuhi persyaratan berikut:
version dan category harus sesuai dengan instans sumber MyBase for PostgreSQL.
Kapasitas disk harus lebih besar daripada ruang yang digunakan oleh instans sumber MyBase for PostgreSQL.
Keluarga instans harus dedicated.
Untuk informasi selengkapnya tentang cara membuat instans, lihat Buat instans ApsaraDB RDS for PostgreSQL dengan cepat.
CatatanUntuk migrasi melalui jaringan internal, pastikan instans tujuan ApsaraDB RDS for PostgreSQL berada dalam region dan VPC yang sama dengan instans sumber MyBase for PostgreSQL.
Untuk migrasi melalui jaringan publik, pastikan Anda telah mengajukan public endpoint untuk kedua instans, yaitu ApsaraDB RDS for PostgreSQL dan MyBase for PostgreSQL. Untuk informasi selengkapnya, lihat Ajukan public endpoint untuk instans ApsaraDB RDS for PostgreSQL dan Ajukan public endpoint untuk instans MyBase for PostgreSQL.
Konfigurasikan IP whitelist untuk memastikan instans ApsaraDB RDS for PostgreSQL dan MyBase for PostgreSQL dapat saling mengakses. Untuk informasi selengkapnya, lihat Konfigurasikan IP whitelist untuk instans ApsaraDB RDS for PostgreSQL dan Konfigurasikan IP whitelist untuk instans MyBase for PostgreSQL.
Anda dapat login ke Konsol ApsaraDB RDS atau ApsaraDB for MyBase untuk melihat Blok CIDR internal instans Anda. Di panel navigasi sebelah kiri, klik Database Connection. Pada halaman ini, temukan baris Network Type untuk melihat Blok CIDR internal instans, misalnya
172.x.x.x. Port internalnya adalah5432.Buat akun dengan hak istimewa tinggi untuk instans MyBase for PostgreSQL. Untuk informasi selengkapnya, lihat Buat akun database.
Perhatian
Selama task Cloud Migration berlangsung, Anda dapat membaca dari dan menulis ke database sumber MyBase for PostgreSQL. Namun, jangan melakukan operasi lain seperti migrasi tambahan, restart, atau perubahan spesifikasi.
Jika Anda mengatur instans MyBase for PostgreSQL menjadi read-only, aplikasi Anda hanya dapat membaca dari instans tersebut.
Instans dari keluarga instans tujuan umum baru tidak mendukung migrasi melalui jaringan publik.
Langkah 1: Evaluasi kelayakan
Buka halaman Instances. Di bilah navigasi atas, pilih region tempat instans RDS berada. Lalu, temukan instans RDS tersebut dan klik ID-nya.
Di panel navigasi sebelah kiri, klik Cloud Migration/Disaster Recovery. Kemudian, klik tab Feasibility Assessment.
Pada langkah Select Scenario and Source Type di wizard konfigurasi, pilih Cloud Migration untuk skenario dan pilih Alibaba Cloud RDS Instance untuk tipe sumber. Lalu, klik Next.
-
Pada halaman Configure Destination Instance, klik Next.
Pada langkah Source Instance Configuration, pilih semua pemeriksaan prasyarat yang telah selesai dan klik Next.
Pada langkah Start Feasibility Assessment, konfigurasikan informasi database sumber.
Parameter
Deskripsi
Migration Task Name
Nama dibuat secara otomatis oleh sistem. Anda tidak perlu mengubahnya.
Source VPC IP/DNS
Titik akhir instans MyBase for PostgreSQL. Untuk informasi selengkapnya tentang cara melihat titik akhir publik dan internal suatu instans, lihat Lihat atau ubah titik akhir internal dan publik serta port.
Source Instance Port
Nomor port instans MyBase for PostgreSQL. Untuk informasi selengkapnya tentang cara melihat nomor port suatu instans, lihat Lihat atau ubah titik akhir internal dan publik serta port.
Username
Akun dengan hak istimewa tinggi dari instans MyBase for PostgreSQL. Untuk informasi selengkapnya tentang cara melihat akun instans, lihat Lihat akun database.
Password
Password untuk akun dengan hak istimewa tinggi tersebut.
Klik Create Feasibility Assessment Task.
CatatanSelama task evaluasi kelayakan berlangsung, status instans berubah menjadi Maintaining Instance.
Setelah evaluasi kelayakan selesai, Anda dapat melihat status task evaluasi tersebut di daftar Cloud Migration pada halaman Feasibility Assessment.
Anda hanya dapat melanjutkan ke Langkah 2: Cloud Migration jika Status bernilai Succeeded.
Jika Status bernilai Failed, klik View Report di kolom Actions dan perbaiki error sesuai penjelasan dalam laporan. Untuk informasi tentang error umum, lihat Interpretasikan laporan Feasibility Assessment.
Setelah Anda memperbaiki error tersebut, Anda dapat mengklik Re-assess di kolom Actions untuk menjalankan evaluasi ulang.
Langkah 2: Cloud Migration
Anda hanya dapat melakukan langkah ini setelah evaluasi kelayakan berhasil.
Pada tab Cloud Migration, klik Create Cloud Migration Task.
Pada kotak dialog yang muncul, pilih task evaluasi kelayakan yang berhasil dari Langkah 1: Evaluasi kelayakan pada daftar drop-down Associated Assessment Task.
CatatanSetelah Anda memilih Associated Assessment Task, parameter Migration Source Type, Source IP/ DNS, Port of Source Instance, dan Username akan terisi secara otomatis.
Klik Start Cloud Migration untuk memulai task migrasi.
PentingSelama task migrasi berlangsung, status instans berubah menjadi Migrating Data. Anda dapat membaca dari dan menulis ke database sumber MyBase for PostgreSQL, tetapi jangan melakukan operasi lain seperti migrasi tambahan, restart, atau perubahan spesifikasi.
Lakukan cloud cutover.
Di daftar task migrasi, klik tautan pada kolom Cloud Migration Phase untuk melihat progres task saat ini.
Ketika fase migrasi cloud berada pada tahap incremental synchronization, Anda dapat mengklik Actions di kolom Actions untuk menjadikan instans ApsaraDB RDS for PostgreSQL sebagai instans utama.
Pada kotak dialog Switch to Cloud, ikuti petunjuk di layar untuk mengatur instans MyBase for PostgreSQL menjadi read-only atau hentikan penulisan dari aplikasi.
CatatanUntuk mengatur instans MyBase for PostgreSQL menjadi read-only:
Login ke database MyBase for PostgreSQL dan jalankan perintah berikut untuk memeriksa apakah superuser ada.
SELECT CASE WHEN(count(rolname)<= 3) THEN 'superuser check ok' ELSE 'exists superuser created by user' END AS result FROM pg_roles where rolsuper= 't' and rolname in ('aurora', 'replicator') or rolname like 'pg%' GROUP BY rolname limit 1;Jika superuser ada, hubungi engineer Alibaba Cloud untuk memodifikasi pengaturannya.
Jika tidak ada superuser, lakukan langkah-langkah berikut untuk memodifikasi pengaturan:
Login ke Konsol ApsaraDB for MyBase.
Gunakan fitur Parameter Settings untuk mengatur parameter rds_force_trans_ro_non_sup menjadi on. Di panel navigasi sebelah kiri, klik Parameter Settings. Pada tab Modifiable Parameters, temukan parameter
rds_force_trans_ro_non_sup, ubah nilai running-nya menjadion, lalu klik Submit Parameters.Setelah modifikasi selesai, login ke database MyBase for PostgreSQL dan jalankan perintah berikut untuk menghentikan semua sesi aktif.
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE usename not in ('replicator', 'monitor', 'pgsql', 'aurora') AND pid != pg_backend_pid();
Centang semua kotak centang dan klik Switch Now. Tunggu hingga migrasi selesai.
Langkah 3: Hubungkan ke aplikasi Anda
Opsi 1: Tukar titik akhir (direkomendasikan)
Ubah titik akhir instans MyBase for PostgreSQL. Lalu, tetapkan titik akhir aslinya ke instans ApsaraDB RDS for PostgreSQL.
Sebagai contoh, asumsikan titik akhir instans MyBase for PostgreSQL Anda adalah pgm-aaa.pg.rds.aliyuncs.com dan titik akhir instans ApsaraDB RDS for PostgreSQL Anda adalah pgm-bbb.pg.rds.aliyuncs.com. Anda dapat mengubah titik akhir instans MyBase for PostgreSQL menjadi pgm-ccc.pg.rds.aliyuncs.com, lalu mengubah titik akhir instans ApsaraDB RDS for PostgreSQL menjadi pgm-aaa.pg.rds.aliyuncs.com.
Opsi 2: Perbarui titik akhir aplikasi
Dapatkan titik akhir instans ApsaraDB RDS for PostgreSQL, lalu perbarui di konfigurasi aplikasi Anda.