全部产品
Search
文档中心

PolarDB:Failover slot replikasi logis

更新时间:Jul 03, 2025

Topik ini menjelaskan fitur failover slot replikasi logis dari PolarDB for PostgreSQL. Jika node utama gagal, fitur ini memastikan bahwa slot replikasi logis disinkronkan dari node utama ke node cadangan.

Prasyarat

Kluster PolarDB for PostgreSQL menjalankan PostgreSQL 11 (versi revisi 1.1.27 atau lebih baru).

Catatan

Jalankan pernyataan SHOW polar_version untuk melihat versi revisi kluster Anda. Tingkatkan versi revisi jika diperlukan.

Informasi latar belakang

Menurut protokol replikasi streaming PostgreSQL, slot replikasi logis pada node utama tidak disinkronkan ke node baca-saja yang berfungsi sebagai node cadangan. Dalam hal terjadi failover, slot replikasi logis hilang, dan akibatnya langganan logis terganggu. Untuk menyelesaikan masalah ini, PolarDB for PostgreSQL meningkatkan sistem dengan mendukung failover slot replikasi logis.

Catatan
  • Failover slot replikasi fisik tidak didukung.

  • Untuk informasi lebih lanjut, lihat bagian Replication slots dari Konsep Decoding Logis PostgreSQL.

Aktifkan atau nonaktifkan fitur failover slot replikasi logis

Anda dapat mengaktifkan atau menonaktifkan fitur failover slot replikasi logis dengan mengonfigurasi parameter polar_failover_slot_mode. Konfigurasikan parameter di konsol. Nilai valid adalah sebagai berikut:

  • sync: mengaktifkan failover slot replikasi logis dan mengatur ke mode sinkron.

    Catatan
    • Mode sinkron memastikan tidak ada data yang hilang dalam replikasi logis selama failover kluster.

    • Hal ini dimungkinkan dengan memastikan bahwa klien replikasi logis tidak menerima perubahan lebih awal daripada node cadangan. Namun, dalam kasus pemutusan jaringan yang lama dan penyambungan ulang atau pembangunan ulang node cadangan, jendela waktu menjadi cukup besar sehingga latensi sinkronisasi utama-cadangan relatif tinggi dan klien replikasi logis mungkin menerima perubahan lebih awal daripada node cadangan. Jika failover terjadi selama jendela waktu ini, data mungkin hilang dalam replikasi logis. Selain itu, data yang dihasilkan pada node utama baru juga mungkin hilang.

      Untuk menghindari kehilangan data seperti itu, hubungi kami untuk mengatur parameter polar_priority_replication_force_wait ke on, sehingga ketika node cadangan terputus, node utama tidak mengirimkan perubahan ke klien replikasi logis sampai node cadangan tersambung kembali atau dibangun ulang. Namun, ini mengurangi ketersediaan replikasi logis. Lakukan dengan hati-hati.

  • async (default): mengaktifkan failover slot replikasi logis dan mengatur ke mode asinkron.

    Catatan
    • Dalam mode asinkron, tidak ada data yang hilang dalam replikasi logis selama failover kluster HA. Namun, data duplikat mungkin dikirim ke klien replikasi logis. Jika klien memiliki data yang lebih baru daripada node utama baru setelah failover selesai, klien mungkin telah menyimpan data yang hilang, jika ada, selama failover.

    • Jika data yang tidak konsisten memengaruhi bisnis Anda, kami sarankan Anda menggunakan mode sinkron.

  • off: menonaktifkan failover slot replikasi logis.