Ich habe einen PostgreSQL 9.1-Server, der unter einem CentOS 5.8 32-Bit-Betriebssystem ausgeführt wird, und ich habe die WAL-Archivierung aktiviert. Auf diesem Server befinden sich drei Datenbanken: DatenbankA, DatenbankB und DatenbankC. Jemand löscht eine Tabelle um 12 Uhr in DatenbankB und ich möchte DatenbankB kurz vor dem Zeitpunkt wiederherstellen, zu dem die Tabelle gelöscht wurde. Es ist jetzt 15 Uhr.
Wie kann ich Datenbank B bis 12 Uhr wiederherstellen, ohne Daten in den beiden anderen Datenbanken im Wert von drei Stunden zu verlieren?
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'
Ich habe mein Basis-Backup um 9 Uhr ausgeführt
pg_basebackup -h 127.0.0.1 -D /opt/pgsql/backup
Der PostgreSQL-Dienst wurde um 15 Uhr heruntergefahren.