All Products
Search
Document Center

PolarDB:Manajemen Langganan

Last Updated:Jul 02, 2025

Untuk mengelola file Write-Ahead Logging (WAL) secara efektif, PolarDB for PostgreSQL memungkinkan Anda melihat slot replikasi logis dari konsol PolarDB.

Informasi latar belakang

Jika slot replikasi logis yang tidak aktif tidak dibersihkan tepat waktu, file WAL akan terus menumpuk. Hal ini dapat mengonsumsi sejumlah besar ruang penyimpanan dan bahkan menyebabkan disk penuh, sehingga kluster menjadi terkunci. Saat kluster terkunci, data tidak dapat ditulis, yang dapat mengganggu operasi bisnis Anda.

PolarDB for PostgreSQL memungkinkan Anda melihat slot replikasi logis dari konsol PolarDB. Anda dapat memantau status slot tersebut dan menghapus slot yang tidak aktif untuk membersihkan file WAL yang menumpuk.

Prasyarat

Untuk kluster terpusat PolarDB for PostgreSQL (yang Edisi Database-nya adalah Enterprise Edition atau Standard Edition), Anda dapat mengatur parameter wal_level ke logical dari konsol PolarDB. Setelah memodifikasi parameter ini, kluster akan restart. Pastikan untuk membuat pengaturan bisnis yang sesuai sebelum memodifikasi parameter dan lanjutkan dengan hati-hati.

Catatan

Secara default, parameter wal_level dari kluster terdistribusi PolarDB for PostgreSQL diatur ke logical.

Lihat slot replikasi logis

Catatan
  • Jika tidak ada slot replikasi logis di kluster, Anda harus terlebih dahulu membuat sumber daya yang relevan.

  • Jika ingin melihat slot replikasi logis di konsol PolarDB, hubungi kami.

  1. Masuk ke Konsol PolarDB. Di panel navigasi sebelah kiri, pilih Clusters. Pilih wilayah kluster pada halaman yang muncul, lalu klik ID kluster dalam daftar Clusters untuk masuk ke halaman Informasi Dasar kluster.

  2. Di panel navigasi sebelah kiri, pilih Settings and Management > Subscription Management. Pada tab WAL File Management, Anda dapat melihat informasi tentang slot replikasi logis.

    Parameter manajemen file WAL

    Deskripsi

    Slot Name

    Nama slot replikasi logis.

    Slot Type

    Tipe slot replikasi logis. Hanya mendukung logical.

    Use Plug-in

    Secara default, PolarDB for PostgreSQL mendukung plugin berikut:

    • decoderbufs

    • decoder_raw

    • wal2json

    • pgoutput

    Temporary Slot

    Menentukan apakah slot replikasi adalah slot sementara. Slot sementara adalah jenis slot khusus yang hanya ada selama sesi saat ini, dan secara otomatis dihapus setelah sesi berakhir.

    • true: Slot adalah slot sementara.

    • false: Slot adalah slot permanen.

    Database Name

    Database tempat slot replikasi logis berada.

    Accumulated WAL Files

    Jumlah log WAL yang terakumulasi akibat slot replikasi logis. Satuan: MB.

    Logical Subscription Latency

    Keterlambatan antara penerbit dan pelanggan untuk slot replikasi logis saat ini. Satuan: detik.

    Apakah Aktif

    Menunjukkan apakah slot replikasi logis sedang digunakan.

    • INACTIVE

    • ACTIVE

  3. (Opsional) Jika bidang Whether Active dari slot replikasi logis adalah INACTIVE, file WAL akan terus menumpuk. Tangani masalah ini sesegera mungkin menggunakan salah satu metode berikut:

    • Aktifkan slot untuk mengubah statusnya menjadi ACTIVE.

    • Jika slot ini tidak lagi diperlukan atau bersifat redundan, hapus menggunakan pernyataan SELECT pg_drop_replication_slot('slot_name');.

(Opsional) Buat slot replikasi logis

  1. Buat publikasi di database penerbit.

    CREATE PUBLICATION <Nama Publikasi> FOR TABLE <Nama Tabel>;

    Contoh:

    CREATE PUBLICATION pub1 FOR TABLE public.t1;
    Catatan

    Untuk melihat publikasi yang ada di kluster, jalankan pernyataan SELECT * FROM pg_publication;.

  2. Buat langganan di database pelanggan. Dalam contoh ini, penerbit dan pelanggan adalah database berbeda dalam kluster yang sama.

    1. Gunakan akun istimewa untuk membuat slot replikasi logis di database penerbit.

      SELECT pg_create_logical_replication_slot('', 'pgoutput');
    2. Di database pelanggan, buat tabel dengan skema dan nama yang sama seperti tabel yang ingin direplikasi dari database penerbit.

    3. Buat langganan logis di database pelanggan.

      CREATE SUBSCRIPTION my_subscription
      CONNECTION 'channel_name=localhost dbname=<Database Penerbit> user=<Akun Istimewa> password=<Kata Sandi>'
      PUBLICATION pub1 WITH (create_slot=false,slot_name=);
      Penting

      Saat database penerbit dan pelanggan berada dalam kluster yang sama, Anda harus menambahkan WITH (create_slot=false) untuk menginstruksikan pelanggan agar tidak membuat slot replikasi baru dan sebaliknya menggunakan yang sudah ada.