全部产品
Search
文档中心

ApsaraDB RDS:Konfigurasikan file postgresql.conf

更新时间:Jun 25, 2025

ApsaraDB RDS for PostgreSQL memungkinkan Anda menggunakan fitur migrasi cloud untuk memindahkan data dari instans PostgreSQL yang dikelola sendiri di Elastic Compute Service (ECS) atau pusat data ke instans ApsaraDB RDS for PostgreSQL. Topik ini menjelaskan cara mengonfigurasi file postgresql.conf pada instans PostgreSQL yang dikelola sendiri.

Prosedur

Catatan

Dalam topik ini, instans PostgreSQL yang dikelola sendiri dan instans RDS menjalankan PostgreSQL 13 di CentOS 7.

  1. Hubungkan ke instance PostgreSQL yang dikelola sendiri, lalu periksa nilai parameter listen_addresses serta nilai parameter wal_keep_segments atau wal_keep_size.

    Parameter

    Deskripsi

    Perintah

    Nilai yang Diharapkan

    listen_addresses

    Menentukan apakah instans PostgreSQL yang dikelola sendiri mendukung koneksi jarak jauh.

    SHOW listen_addresses;

    *

    wal_keep_segments

    Menentukan jumlah minimum file log yang dapat disimpan dalam direktori pg_wal. Kami menyarankan Anda menetapkan parameter ini ke nilai yang lebih besar dari atau sama dengan 4.096. Jika nilai parameter ini kurang dari 4.096, catatan write-ahead logging (WAL) dari instans PostgreSQL yang dikelola sendiri akan dihapus setelah pencadangan penuh. Dalam hal ini, Anda harus mencadangkan instans PostgreSQL yang dikelola sendiri lagi.

    Catatan

    Parameter ini cocok untuk instans PostgreSQL yang dikelola sendiri yang menjalankan PostgreSQL 10, PostgreSQL 11, atau PostgreSQL 12.

    SHOW wal_keep_segments;

    4096

    wal_keep_size

    Menentukan ukuran minimum file log yang dapat disimpan dalam direktori pg_wal. Kami menyarankan Anda menetapkan parameter ini ke nilai yang lebih besar dari atau sama dengan 65.536 MB. Jika nilai parameter ini kurang dari 65.536 MB, catatan WAL dari instans PostgreSQL yang dikelola sendiri akan dihapus setelah pencadangan penuh. Dalam hal ini, Anda harus mencadangkan instans PostgreSQL yang dikelola sendiri lagi.

    Catatan

    Parameter ini cocok untuk instans PostgreSQL yang dikelola sendiri yang menjalankan PostgreSQL 13 dan versi yang lebih baru.

    SHOW wal_keep_size;

    65536

  2. Hentikan layanan basis data PostgreSQL.

    Catatan

    Hanya pengguna postgres yang memiliki izin untuk menjalankan perintah berikut. Anda dapat menjalankan perintah su - postgres untuk beralih ke pengguna postgres.

    /usr/pgsql-13/bin/pg_ctl stop -m fast
  3. Temukan file postgresql.conf.

    Catatan

    Hanya pengguna root yang memiliki izin untuk menjalankan perintah berikut. Anda dapat menjalankan perintah su - root untuk beralih ke pengguna root.

    find / -name postgresql.conf

    Contoh keluaran:

    /var/lib/pgsql/13/data/postgresql.conf
  4. Buka direktori tempat file postgresql.conf disimpan.

    cd /var/lib/pgsql/13/data/
  5. Jalankan perintah vim postgresql.conf untuk membuka file postgresql.conf. Kemudian, ubah nilai parameter listen_addresses dan parameter wal_keep_segments atau wal_keep_size dalam file tersebut.

    listen_addresses = '*'
    
    # Jika instans PostgreSQL yang dikelola sendiri menjalankan PostgreSQL 10, PostgreSQL 11, atau PostgreSQL 12, lakukan modifikasi berikut:
    wal_keep_segments = 4096
    
    # Jika instans PostgreSQL yang dikelola sendiri menjalankan PostgreSQL 13 atau versi yang lebih baru, lakukan modifikasi berikut:
    wal_keep_size = 65536
    Catatan

    Parameter-parameter sebelumnya mungkin dikomentari secara default. Setelah Anda mengubah nilai suatu parameter, Anda harus menghapus tanda pagar (#) di awal baris tempat parameter tersebut berada.

  6. Tekan Ecs dan masukkan :wq untuk menyimpan file postgresql.conf dan keluar.

  7. Mulai layanan basis data PostgreSQL.

    Catatan

    Hanya pengguna postgres yang memiliki izin untuk menjalankan perintah berikut. Anda dapat menjalankan perintah su - postgres untuk beralih ke pengguna postgres.

    /usr/pgsql-13/bin/pg_ctl start

Apa yang Harus Dilakukan Selanjutnya

Buat akun untuk migrasi cloud pada instans PostgreSQL yang dikelola sendiri