informatique:db:postgresql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
informatique:db:postgresql [2024/05/31 11:32] bn8informatique:db:postgresql [2024/06/03 10:09] (Version actuelle) – ajout procédure resynchronisation bn8
Ligne 37: Ligne 37:
   - Redémarrer PostgreSQL : ''systemctl start postgresql''   - Redémarrer PostgreSQL : ''systemctl start postgresql''
  
-<note tip>Pour vérifier que le serveur esclave est bien démarré, utiliser la commande SQL suivante sur le serveur maître : +<note tip>Pour vérifier que le serveur esclave est bien démarré et synchronisé, utiliser les requêtes SQL suivantes : 
-<code sql>SELECT usename, application_name, client_addr, state, sync_priority, sync_state FROM pg_stat_replication</code>+  * depuis le serveur maître : <code sql>SELECT usename, application_name, client_addr, state, sync_priority, sync_state FROM pg_stat_replication;</code> 
 +  * depuis le serveur esclave : <code sql>SELECT * FROM pg_stat_wal_receiver;</code>
 </note> </note>
 +
 +==== Resynchronisation ====
 +
 +<code bash>
 +# Retrieve remote host configuration
 +PGDIR=/var/lib/postgresql/15/main
 +PGUSER=$(grep primary_conninfo $PGDIR/postgresql.auto.conf |sed 's/.*user=\([^ ]\+\) .*/\1/')
 +PGPASSWORD=$(grep primary_conninfo $PGDIR/postgresql.auto.conf |sed 's/.* password=\([^ ]\+\) .*/\1/')
 +PGHOST=$(grep primary_conninfo $PGDIR/postgresql.auto.conf |sed 's/.* host=\([^ ]\+\) .*/\1/')
 +cat << EOF
 +Remote host: $PGHOST
 +Username: $PGUSER
 +Password: $PGPASSWORD
 +EOF
 +
 +# Start resync
 +systemctl stop postgresql
 +rm -rf $PGDIR/*
 +time sudo -u postgres pg_basebackup -h $PGHOST -U $PGUSER -D $PGDIR/ -R --progress
 +systemctl start postgresql
 +</code>
 +
  • informatique/db/postgresql.1717155169.txt.gz
  • Dernière modification : 2024/05/31 11:32
  • de bn8