我有一个在CentOS 5.8 32位操作系统上运行的PostgreSQL 9.1服务器,并且启用了WAL归档。在此服务器上,有三个数据库:databaseA,databaseB和databaseC。有人在下午12点删除了databaseB上的一个表,我想将databaseB还原到删除表的时间之前。现在的时间是下午3点。
我如何才能将数据库B还原到下午12点,而又不会丢失其他两个数据库中三个小时的数据呢?
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'
我在上午9点运行了基本备份
pg_basebackup -h 127.0.0.1 -D /opt/pgsql/backup
PostgreSQL服务在下午3点关闭。