全部产品
Search
文档中心

ApsaraDB RDS:Praktik Terbaik Peningkatan Versi Utama Basis Data Tanpa Downtime

更新时间:Jul 27, 2025

Topik ini menjelaskan cara melakukan peningkatan versi utama untuk database RDS PostgreSQL tanpa downtime, membantu Anda menghindari gangguan layanan selama proses peningkatan.

Proses peningkatan

  1. Pemeriksaan Pra-Peningkatan.

  2. Buat Tugas Peningkatan Tanpa Downtime.

  3. Beralih ke Instans Versi Lebih Tinggi.

Dampak peningkatan

Selama proses peningkatan tanpa downtime, fase-fase berikut dapat memengaruhi penggunaan instans:

  • Periode Pembatasan DDL: Mulai dari awal tugas peningkatan hingga pergantian instans selesai, semua operasi DDL dilarang.

  • Periode Akumulasi Log WAL: Setelah instans tujuan ditingkatkan ke versi yang lebih tinggi, hubungan replikasi logis harus dibentuk untuk memastikan konsistensi data. Sebelum melakukan peningkatan versi utama, slot replikasi logis dibuat, yang menghasilkan periode akumulasi log.

    Catatan

    Anda bisa mendapatkan informasi tentang periode akumulasi log WAL dengan melihat log peningkatan dalam riwayat peningkatan. Log mencatat peristiwa pembuatan slot replikasi dan publikasi pada sumber. Ketika log WAL mulai disimpan, mereka akan mulai menumpuk hingga subscriber pada tujuan dimulai dan membentuk hubungan replikasi logis, pada titik mana log WAL akan mulai dikonsumsi dan tidak lagi menumpuk.

  • Periode Sinkronisasi Replikasi Logis: Seluruh periode dari pembentukan hubungan replikasi logis hingga menyelesaikan pergantian instans. Setelah replikasi logis dibentuk, itu akan menghasilkan beban sumber daya tertentu, yang erat kaitannya dengan jumlah database dan lalu lintas.

  • Periode Pergantian: Instans berada dalam mode read-only. Durasi read-only berkaitan dengan jumlah sequence.

Langkah 1: Pemeriksaan pra-peningkatan

Peningkatan versi utama tanpa downtime menggunakan replikasi logis dan memerlukan larangan operasi DDL sepanjang proses. Oleh karena itu, penting untuk memeriksa dan membatasi keterbatasan replikasi logis serta plugin yang mungkin memicu operasi DDL.

  1. Masuk ke Konsol ApsaraDB RDS dan buka halaman Instans. Di bilah navigasi atas, pilih wilayah di mana instans RDS berada. Kemudian, temukan instans RDS dan klik ID instans tersebut.

  2. (Opsional) Jika instans hanya baca telah dibuat untuk instans yang akan ditingkatkan, Anda perlu mengubah alamat koneksi yang dikonfigurasi di aplikasi Anda dari instans hanya baca ke instans utama, dan hapus instans hanya baca.

    Catatan

    Untuk stabilitas layanan, kami sarankan Anda mengubah konfigurasi endpoint pada aplikasi Anda selama jam-jam sepi.

  3. Di panel navigasi sisi kiri, klik Major Version Upgrade.

    Catatan

    Jika Anda tidak melihat Major Version Upgrade di konsol, periksa versi dan konfigurasi seri instans RDS PostgreSQL Anda. Untuk informasi lebih lanjut, lihat Tingkatkan Versi Mesin Utama.

  4. Di tab Upgrade Check, klik Create Upgrade Check Report.

  5. Select The Upgrade Version, dan untuk Upgrade Mode, pilih Zero Downtime, lalu klik OK.

    Anda dapat melihat hasil pemeriksaan peningkatan di bagian Upgrade Check Log.

    Penting
    • Untuk memastikan bahwa peningkatan dapat diselesaikan dengan sukses, pastikan bahwa Check Result dari laporan pemeriksaan peningkatan adalah berhasil sebelum melanjutkan ke langkah peningkatan berikutnya. Saat hasil pemeriksaan laporan peningkatan gagal, Anda dapat mengklik View Information untuk melihat isi rinci laporan. Untuk kesalahan umum dan penyebabnya, lihat Menginterpretasi Laporan Pemeriksaan Peningkatan Versi Utama RDS PostgreSQL.

    • Setelah pemeriksaan peningkatan berhasil, jika plugin telah dibuat pada instans tujuan, Anda perlu melakukan pemeriksaan ulang.

Langkah 2: Tingkatkan versi utama

  1. Klik tab Upgrade Instance, baca konten peringatan, lalu Select The Upgrade Version, dan klik Create Upgrade Task.

  2. Di kotak dialog yang muncul, baca prompt dan klik OK.

  3. Di bagian Create Major Version Upgrade Task, pilih Zero-downtime untuk Upgrade Mode.

  4. Klik Create Now.

    Ketika status instans berubah menjadi Migrating, itu menunjukkan bahwa tugas peningkatan telah dimulai secara resmi.

    Anda dapat melihat hasil peningkatan di tab Upgrade History.

Monitor beban instans

Selama proses peningkatan, Anda dapat memantau beban instans dan penggunaan disk untuk memahami status performa instans.

  • Selama periode akumulasi log WAL, penggunaan disk instans akan meningkat sementara. Setelah replikasi logis dibentuk, penggunaan disk akan berkurang.

  • Selama fase replikasi logis, lalu lintas dan jumlah database akan memengaruhi beban pada instans sumber. Anda dapat mengevaluasi dampak replikasi logis dengan mengamati penggunaan sumber daya wal_sender di berbagai kategori sumber daya.

Langkah 3: Beralih ke versi lebih tinggi

  1. Verifikasi instans versi lebih tinggi.

    Ketika status instans berubah dari Migrating menjadi Migrating Data, itu menunjukkan bahwa replikasi logis telah dibentuk, dan proses pembuatan tugas peningkatan akan berakhir. Anda dapat memverifikasi data di instans versi lebih tinggi.

    Buka tab Upgrade History dan gunakan Higher Version Verification Address dari catatan peningkatan target untuk terhubung ke instans versi lebih tinggi guna memverifikasi data yang ditingkatkan.

    Catatan

    Instans versi lebih tinggi berada dalam mode Read-Only dan tidak dapat ditulis.

  2. Beralih ke instans versi lebih tinggi.

    Setelah memastikan bahwa data di instans versi lebih tinggi sesuai harapan dan hasil peningkatan adalah Synchronizing, klik kolom Upgrade Log tombol Change untuk beralih bisnis Anda ke instans versi lebih tinggi.

    Catatan
    • Jika Upgrade Result menunjukkan status lain, lihat Deskripsi Hasil Peningkatan untuk instruksi penanganan.

    • Jika Anda memutuskan untuk membatalkan peningkatan ini, Anda dapat mengklik kolom Upgrade Log tombol Cancel. Ini akan menghapus slot replikasi logis, membatalkan dampak replikasi logis pada instans sumber, dan mengizinkannya melakukan operasi DDL.

  3. Tetapkan Tolerable Write Suspension Time (dalam detik), dan klik OK.

    Karena replikasi logis tidak dapat menyinkronkan tabel Sequence, akan ada periode selama pergantian untuk menyinkronkan tabel Sequence. Anda dapat menetapkan Tolerable Write Suspension Time saat beralih untuk memastikan pergantian selesai dalam waktu yang dapat diterima. Selama proses ini, Upgrade Result akan berubah menjadi Read Only. Jika waktu ini terlampaui, sistem akan kembali ke status Synchronizing dan menghapus batasan read-only.

  4. Periksa hasil pergantian.

    • Ketika status instans adalah Migrating, itu menunjukkan bahwa pergantian sedang berlangsung. Di tab Upgrade History dari Major Version Upgrade, klik tombol Break di kolom Upgrade Log untuk membatalkan operasi pergantian ini.

    • Ketika status instans berubah menjadi The Instance Is Running., itu menunjukkan bahwa pergantian berhasil. Di halaman Basic Information instans, Anda dapat melihat informasi versi saat ini dari instans.

Pengembalian

Setelah beralih, jika Anda perlu mengembalikan ke instans versi lebih rendah, Anda dapat mengkloning instans baru dari cadangan terakhir versi lebih rendah sebelum beralih, dan mengubah alamat koneksi instans ini ke alamat koneksi instans lama untuk mencapai pengembalian ke versi lebih rendah.

Catatan

Sebelum beralih, sistem akan mencadangkan instans versi lebih rendah.

Deskripsi hasil peningkatan

Catatan peningkatan di tab Upgrade History terutama mencakup status berikut untuk Upgrade Result:

Status

Makna

Tindakan yang Tersedia

Berjalan

Tugas peningkatan sedang berjalan.

Tidak ada.

Synchronizing

Status replikasi logis normal.

  • Ubah: Beralih ke instans versi lebih tinggi.

  • Batalkan: Abandon this upgrade.

Replication Interrupted

Status replikasi logis abnormal.

  • Lihat log peningkatan untuk menentukan penyebab pengecualian replikasi.

  • Batalkan: Abandon this upgrade.

Read Only

Pergantian sedang berlangsung, instans dalam mode read-only, dan tabel Sequence sedang disinkronkan.

Batalkan: Batalkan operasi pergantian ini.

Switch

Sinkronisasi tabel Sequence selesai, dan tugas akhir sedang berjalan.

Tidak ada.

Canceled

Tugas peningkatan dibatalkan.

Tidak ada.

Success

Tugas peningkatan berhasil.

Tidak ada.