Vous n'êtes pas identifié(e).
Bonjour,
Nous effectuons le backup d'une base de données avec tablespaces séparés (donc sur un autre répertoire que $PGDATA) avec pg_basebackup (pour permettre un PIT).
La restauration est (normalement) effectuée de cette manière :
Arrêt du cluster et suppression des fichiers
pg_ctl stop
rm -fr $PGDATA
Décompression du ficher de backup "base.tar"
cd $PGDATA
tar -xvf backup_directory/backup_postgres_93_all_basebackup_20170217_073953/base.tar.gz
ensuite décompression de chaque fichier contenant un tablespace
cd <répertoire des TS>
rm -fr *
tar -xvf backup_directory/backup_postgres_93_all_basebackup_20170217_073953/16385.tar.gz
tar -xvf backup_directory/backup_postgres_93_all_basebackup_20170217_073953/16386.tar.gz
tar -xvf backup_directory/backup_postgres_93_all_basebackup_20170217_073953/16387.tar.gz
tar -xvf backup_directory/backup_postgres_93_all_basebackup_20170217_073953/16388.tar.gz
pour terminer créer le ficher recovery.conf avec les variables nécessaires et redémarrer le cluster.
vi $PGDATA/recovery.conf
pg_ctl start
existe t'il un autre moyen de restauration d'une DB avec TS séparés que ce procédé manuel ?
Merci
Hors ligne
Bonjour,
Depuis la version 9.5 vous avez un fichier tablespace_map dans la sauvegarde qui permet de définir où positionner les tablespace à la restauration.
Julien.
https://rjuju.github.io/
Hors ligne