Restauration PostgreSQL PITR


9

J'ai un serveur PostgreSQL 9.1 fonctionnant sur un OS CentOS 5.8 32 bits et j'ai activé l'archivage WAL. Sur ce serveur, il existe trois bases de données: databaseA, databaseB et databaseC. Quelqu'un supprime une table à 12 h sur la base de donnéesB et je souhaite restaurer la base de donnéesB juste avant l'heure à laquelle la table a été supprimée. Il est maintenant 15 heures.

Comment puis-je simplement restaurer databaseB jusqu'à 12 heures sans perdre trois heures de données dans les deux autres bases de données?

postgresql.conf

wal_level = archive             
archive_mode = on               
archive_command = 'test ! -f /opt/pgsql/logs/%f && cp %p /opt/pgsql/logs/%f'
max_wal_senders = 100

recovery.conf

restore_command = 'cp /opt/pgsql/logs/%f %p'
recovery_target_time = '2012-06-29 11:59:59 CEST'

J'ai exécuté ma sauvegarde de base à 9 h.

pg_basebackup -h 127.0.0.1 -D /opt/pgsql/backup

Le service PostgreSQL a été arrêté à 15 heures.

Réponses:


6

Je ferais une récupération ponctuelle vers un autre emplacement, en restaurant à l'heure souhaitée et en pg_dump la base de données de problèmes. Je laisserais tomber la seule base de données à l'emplacement normal, la recréerais et chargerais la sortie pg_dump.

Assurez-vous de créer et d'enregistrer une copie au niveau du système de fichiers de l'arborescence du répertoire de données du cluster avant de commencer quelque chose comme ça.


Merci, +1 pour la réponse. Pourriez-vous s'il vous plaît ajouter les étapes nécessaires pour récupérer vers un autre emplacement, puis la restauration à l'aide de pg_restore? Avec votre réponse, je pense à utiliser l'emplacement de sauvegarde de base réel pour faire le PITR.
— Craig Efrein

0

Pour développer la réponse de kgrittn, vous pouvez également faire une pg_dumpseule de la table qui a été supprimée et la reconstruire dans la base de données existanteB, vous n'avez donc pas besoin de perdre 6 heures de données dans les autres tables.


merci pour votre réponse, mais toutes les différentes contraintes et relations entre les tables m'empêcheraient d'en restaurer une seule.
— Craig Efrein
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.