Guide complet de la configuration du streaming REPLAPATION POSTgreSQL Configuration 16
PostgreSQL 16 offre de solides capacités de réplication pour garantir que les données restent disponibles et distribuées en temps réel entre le serveur principal (primaire) et un serveur de sauvegarde (veille). Voici les étapes qui doivent être suivies pour configurer la réplication du streaming dans PostgreSQL 16.
Préparation initiale
Installation de PostgreSQL
Assurez-vous que PostgreSQL 16 a été installé sur les deux serveurs (primaire et veille). Sinon, vous pouvez l’installer avec la commande suivante:
sudo apt-get update
sudo apt-get install postgresql-16 Créer une réplication de l’utilisateur
Créez un utilisateur spécial pour la réplication sur le serveur principal:
CREATE ROLE rep_user WITH REPLICATION LOGIN PASSWORD 'password'; Configuration sur le serveur principal
1 et 1 Modifier postgresql.conf
L’emplacement de ce fichier est généralement allumé /etc/postgresql/16/main/postgresql.conf. Ajouter ou modifier les lignes suivantes:
wal_level="replica"
max_wal_senders = 10
max_replication_slots = 10
wal_log_hints="on"
synchronous_standby_names="FIRST 1 (standby1, standby2)" 2 Modifier pg_hba.conf
L’emplacement de ce fichier est généralement allumé /etc/postgresql/16/main/pg_hba.conf. Ajoutez les lignes suivantes pour permettre l’accès depuis le serveur de secours:
host replication rep_user 10.0.0.2/32 scram-sha-256 3 et 3 Redémarrer PostgreSQL
Après avoir modifié la configuration, redémarrez PostgreSQL:
sudo systemctl restart postgresql 4 Créer un emplacement de réplication (facultatif)
Pour faire un emplacement de réplication, exécutez la commande suivante dans PostgreSQL:
SELECT * FROM pg_create_physical_replication_slot('rep_slot'); Configuration sur le serveur de secours
1 et 1 Arrêtez PostgreSQL:
sudo systemctl stop postgresql 2. Copier les données du primaire au veille:
pg_basebackup -h primary_server_ip -D /var/lib/postgresql/16/main -U rep_user -W -P --write-recovery-conf Option --write-recovery-conf Créera un fichier standby.signal et entrez les paramètres de réplication requis dans postgresql.conf.
3 et 3 Modifier postgresql.conf:
Assurez-vous que le fichier postgresql.conf possède les paramètres suivants:
primary_conninfo = 'host=primary_server_ip port=5432 user=rep_user password=password'
primary_slot_name="rep_slot" # Jika menggunakan slot replikasi
hot_standby = 'on' 4 Modifier pg_hba.conf:
Ajoutez une entrée pour autoriser les connexions au serveur principal:
host replication rep_user primary_server_ip/32 scram-sha-256 5 Démarrer PostgreSQL:
sudo systemctl start postgresql Vérification
Vérifiez l’état de réplication en primaire:
SELECT * FROM pg_stat_replication; Résultats de ContoH
pid | usesysid | usename | application_name | client_addr | client_hostname | client_port | backend_start | backend_xmin | state | sent_lsn | write_lsn | flush_lsn | replay_lsn | write_lag | flush_lag | replay_lag | sync_priority | sync_state | reply_time
--------+----------+----------+------------------+--------------+-----------------+-------------+-------------------------------+--------------+-----------+-------------+-------------+-------------+-------------+-----------+-----------+------------+---------------+------------+-------------------------------
638369 | 340262 | rep_user | 16/main | 34.50.82.145 | | 45992 | 2024-07-10 17:04:53.349471+00 | | streaming | 30/7C014690 | 30/7C014690 | 30/7C014690 | 30/7C014690 | | | | 0 | async | 2024-07-10 17:05:23.409507+00
(1 row) Vérifiez l’état en veille:
SELECT * FROM pg_is_in_recovery(); Résultats de ContoH
postgres@hostname:~/16$ psql
psql (16.3 (Ubuntu 16.3-1.pgdg22.04+1))
Type "help" for help.
postgres=# SELECT * FROM pg_is_in_recovery();
pg_is_in_recovery
-------------------
t
(1 row)
postgres=# Si tout se passe bien, vous avez maintenant une configuration de réplication de streaming postgresql active. Cette réplication garantit que les données sur le serveur de secours sont toujours mises à jour en temps réel à partir du serveur principal, augmentant ainsi la disponibilité et la fiabilité de vos données.
Source:
En suivant ce guide, vous pouvez définir facilement la réplication de streaming sur PostgreSQL 16 et vous assurer que vos données sont toujours synchrones entre les serveurs primaires et de secours.
Hasil pileg
Review Film
Berita Terkini
Berita Terkini
Berita Terkini
review anime
Gaming Center
Berita Olahraga
Lowongan Kerja
Berita Terkini
Berita Terbaru
Berita Teknologi
Seputar Teknologi
Berita Politik
Resep Masakan
Pendidikan
