Procédure de restauration d'une base Postgresql

Cette procédure se focalise sur la restauration d'une instance de base de données que celle-ci vienne d'être crée ou qu'elle contienne déjà des données.

Pre-requis

Disposer des droits root sur les VM postgres source et cible.

1. Récupérer les dumps

Les dumps de chaque base de données se trouvent sur la Vm postgres de production :

sicpa-lr8-pg-prod.jouy.inra.fr - 193.54.97.47

Se connecter par SSH sur cette VM et identifier le backup total que l'on veut restaurer en se basant sur le port de l'instance PG :

sudo su - 
ls /backup_bdd/postgres/sicpa-lr8-pg-prod/ |grep backup-total

2. Si la vm cible est différente de la vm source :

Pre-requis :
S'assurer qu'il reste suffisamment d'espace disque sur la Vm cible.

Transférer le backup sur la Vm cible par scp (ex :)

scp -rp /backup_bdd/postgres/sicpa-lr8-pg-prod/backup-total-port5433.sql_20240702_102325.gz  <vm_cible>:/tmp/

Remarque :
Dans le cas de la BDD Geedoc de production, l'instance correspond au port 5433

3. Procéder à la restauration complète de l'instance PG :

Spécifier le n° de port de l'instance PG sur laquelle restaurer le fichier de dump (si la Vm source et cible est la même, indiquer le même port).

sudo su - postgres
gunzip backup-total-port5433.sql_20240702_102325.gz
psql -p 5437 -f backup-total-port5433.sql_20240702_102325 postgres

Annexe

Le fichier readme_restaure.txt se trouvant sous /usr/local/ctig/sauv, récapitule les modes opératoires pour les différents types de restauration :
  • totale
  • par base ou table