Rumah  >  Artikel  >  tutorial komputer  >  Penyelesaian replikasi induk-hamba PostgreSQL

Penyelesaian replikasi induk-hamba PostgreSQL

王林
王林ke hadapan
2024-03-16 15:07:121021semak imbas

PostgreSQL 主从复制方案

PostgreSQL menyokong pelbagai penyelesaian replikasi tuan-hamba, yang boleh digunakan untuk sandaran data, pemulihan kerosakan dan pengimbangan beban. Berikut ialah skema replikasi tuan-hamba biasa Anda boleh memilih kaedah yang sesuai mengikut keperluan anda.

  1. Konfigurasikan pangkalan data utama:

    • Pada pelayan pangkalan data utama, pastikan PostgreSQL dipasang dan dikonfigurasikan dengan betul.
    • Edit fail konfigurasi postgresql.conf pangkalan data utama dan dayakan fungsi replikasi. Tetapkan parameter berikut:

      wal_level = replicamax_wal_senders = 10
    • Edit fail pg_hba.conf untuk membenarkan pelayan hamba menyambung ke pelayan induk. Tambah baris berikut:

      host replication <从服务器IP地址> trust
    • Mulakan semula pelayan pangkalan data utama untuk konfigurasi berkuat kuasa.
  2. Buat daripada pangkalan data:

    • Pada pelayan pangkalan data hamba, pastikan PostgreSQL dipasang dan dikonfigurasikan dengan betul.
    • Dalam fail konfigurasi postgresql.conf pangkalan data hamba, dayakan fungsi replikasi. Tetapkan parameter berikut:

      wal_level = replica
    • Buat direktori data yang sama dengan pangkalan data utama dan pastikan ia kosong.
    • Dalam fail pg_hba.conf pangkalan data hamba, tambahkan baris berikut untuk membenarkan sambungan daripada hamba kepada hamba:

      host replication <主服务器IP地址> trust
    • Mulakan semula pelayan pangkalan data hamba untuk menjadikan konfigurasi berkuat kuasa.
  3. Konfigurasikan replikasi tuan-hamba:

    • Pada pelayan pangkalan data utama, cipta peranan pengguna untuk replikasi. Jalankan arahan berikut dalam terminal psql:

      CREATE ROLE replicator REPLICATION LOGIN CONNECTION LIMIT 10 ENCRYPTED PASSWORD 'password';

      Ganti 'kata laluan' dengan kata laluan sebenar anda.

    • Pada pelayan pangkalan data utama, buat slot replikasi. Jalankan arahan berikut dalam terminal psql:

      SELECT * FROM pg_create_physical_replication_slot('replication_slot_name');

      Nota untuk menggantikan 'replication_slot_name' dengan nama slot replikasi sebenar.

    • Pada pelayan pangkalan data utama, ubah suai fail pg_hba.conf untuk membenarkan sambungan bagi peranan pengguna yang direplikasi. Tambah baris berikut:

      host replication replicator <从服务器IP地址> trust
    • Mulakan semula pelayan pangkalan data utama untuk konfigurasi berkuat kuasa.
  4. Mulakan replikasi tuan-hamba:

    • Pada pelayan pangkalan data hamba, gunakan arahan berikut untuk menyambung ke pangkalan data induk dan mulakan replikasi:

      pg_basebackup -h <主服务器IP地址> -U replicator -p 5432 -D /path/to/data_directory -P -R -X stream -c fast

      Nota untuk menggantikan '4f40938c220eb553453145b8c4d78b2c' dengan alamat IP pelayan induk sebenar dan '/path/to/data_directory' dengan laluan direktori data pangkalan data hamba.

    • Dalam fail konfigurasi postgresql.conf pangkalan data hamba, tetapkan parameter berikut:

      primary_conninfo = 'host=<主服务器IP地址> port=5432 user=replicator password=password'primary_slot_name = 'replication_slot_name'

      Nota untuk menggantikan '4f40938c220eb553453145b8c4d78b2c', 'kata laluan' dan 'nama_slot_replikasi' dengan nilai sebenar.

    • Mulakan pelayan pangkalan data hamba.

Selepas melengkapkan langkah di atas, replikasi tuan-hamba akan bermula

Lari. Perubahan data pada pangkalan data induk akan direplikasi secara automatik ke pangkalan data hamba, dan pangkalan data hamba akan mengekalkan konsistensi dengan pangkalan data induk. Anda boleh menggunakan alat pemantauan untuk memantau status replikasi tuan-hamba bagi memastikan ia berfungsi dengan baik.

Sila ambil perhatian bahawa perkara di atas hanyalah gambaran keseluruhan penyelesaian replikasi tuan-hamba, dan pelaksanaan sebenar mungkin perlu dilaraskan mengikut persekitaran dan keperluan tertentu. Adalah disyorkan untuk merujuk kepada dokumentasi rasmi PostgreSQL dan sumber lain yang boleh dipercayai untuk panduan dan arahan yang lebih terperinci.

Atas ialah kandungan terperinci Penyelesaian replikasi induk-hamba PostgreSQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:mryunwei.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam