Ho un server PostgreSQL 9.1 in esecuzione su un sistema operativo CentOS 5.8 a 32 bit e ho abilitato l'archiviazione WAL. Su questo server, ci sono tre database: databaseA, databaseB e databaseC. Qualcuno elimina una tabella alle 12 pm su databaseB e voglio ripristinare databaseB appena prima dell'orario in cui la tabella è stata eliminata. Adesso sono le 03:00.
Come posso ripristinare il databaseB fino alle 12 pm senza perdere tre ore di dati negli altri due database?
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'
Ho eseguito il backup di base alle 9 del mattino
pg_basebackup -h 127.0.0.1 -D /opt/pgsql/backup
Il servizio PostgreSQL è stato chiuso alle 15:00.