Menyiapkan replikasi logis untuk klaster DB Aurora PostgreSQL Anda - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menyiapkan replikasi logis untuk klaster DB Aurora PostgreSQL Anda

Menyiapkan replikasi logis membutuhkan rds_superuser hak istimewa. Klaster DB Aurora PostgreSQL Anda harus dikonfigurasi untuk menggunakan grup parameter klaster DB kustom sehingga Anda dapat mengatur parameter yang diperlukan sebagaimana dijelaskan dalam prosedur berikut. Untuk informasi selengkapnya, lihat Grup parameter cluster DB untuk cluster Amazon Aurora DB.

Untuk menyiapkan replikasi logis PostgreSQL untuk klaster DB Aurora PostgreSQL Anda
  1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih klaster DB Aurora PostgreSQL Anda.

  3. Buka tab Konfigurasi. Di antara detail Instans, temukan tautan Grup parameter dengan Grup parameter klaster DB untuk Jenis.

  4. Pilih tautan untuk membuka parameter kustom yang terkait dengan klaster DB Aurora PostgreSQL Anda.

  5. Di bidang pencarian Parameter, ketik rds untuk menemukan parameter rds.logical_replication. Nilai default untuk parameter ini adalah 0, artinya fitur dinonaktifkan secara default.

  6. Pilih Edit parameter untuk mengakses nilai properti, lalu pilih 1 dari pemilih untuk mengaktifkan fitur tersebut. Tergantung penggunaan yang Anda harapkan, Anda mungkin juga perlu mengubah pengaturan parameter berikut. Namun, dalam banyak kasus, nilai default sudah cukup.

    • max_replication_slots – Tetapkan parameter ini ke nilai yang setidaknya sama dengan jumlah total publikasi dan langganan replikasi logis yang Anda rencanakan. Jika Anda menggunakan AWS DMS, parameter ini harus sama setidaknya dengan tugas pengambilan data perubahan yang direncanakan dari cluster, ditambah publikasi replikasi logis dan langganan.

    • max_wal_sendersdan max_logical_replication_workers — Tetapkan parameter ini ke nilai yang setidaknya sama dengan jumlah slot replikasi logis yang ingin Anda aktif, atau jumlah AWS DMS tugas aktif untuk pengambilan data perubahan. Membiarkan slot replikasi logis tidak aktif mencegah vakum menghilangkan tuple usang dari tabel, jadi kami sarankan Anda memantau slot replikasi dan menghapus slot yang tidak aktif sesuai kebutuhan.

    • max_worker_processes – Tetapkan parameter ini ke nilai yang setidaknya sama dengan total nilai max_logical_replication_workers, autovacuum_max_workers, dan max_parallel_workers. Pada kelas instans DB kecil, proses pekerja latar belakang dapat memengaruhi beban kerja aplikasi, jadi pantau performa basis data jika Anda menetapkan max_worker_processes lebih tinggi dari nilai default. (Nilai default adalah hasil dari GREATEST(${DBInstanceVCPU*2},8}, yang berarti bahwa, secara default, ini adalah 8 atau dua kali setara CPU dari kelas instans DB, mana pun yang lebih besar).

    catatan

    Anda dapat mengubah nilai parameter dalam grup parameter DB buatan pelanggan; Anda tidak dapat mengubah nilai parameter dalam grup parameter DB default.

  7. Pilih Save perubahan.

  8. Boot ulang instans penulis klaster DB Aurora PostgreSQL Anda sehingga perubahan diterapkan. Di konsol Amazon RDS, pilih instans DB utama klaster dan pilih Boot Ulang dari menu Tindakan.

  9. Ketika instans tersedia, Anda dapat memverifikasi bahwa replikasi logis diaktifkan sebagai berikut.

    1. Gunakan psql untuk terhubung ke instans penulis klaster DB Aurora PostgreSQL.

      psql --host=your-db-cluster-instance-1.aws-region.rds.amazonaws.com --port=5432 --username=postgres --password --dbname=labdb
    2. Verifikasi bahwa replikasi logis telah diaktifkan dengan menggunakan perintah berikut.

      labdb=> SHOW rds.logical_replication; rds.logical_replication ------------------------- on (1 row)
    3. Verifikasi bahwa wal_level diatur ke logical.

      labdb=> SHOW wal_level; wal_level ----------- logical (1 row)

Untuk contoh menggunakan replikasi logis untuk menjaga tabel basis data disinkronkan dengan perubahan dari sumber klaster DB Aurora PostgreSQL, lihat Contoh: Menggunakan replikasi logis dengan klaster DB Aurora PostgreSQL.