Cra*_*ein 9 postgresql backup recovery
我有一个在 CentOS 5.8 32 位操作系统上运行的 PostgreSQL 9.1 服务器,并且我启用了 WAL 归档。在这台服务器上,有三个数据库:databaseA、databaseB和databaseC。有人在下午 12 点在 databaseB 上删除了一个表,我想将 databaseB 恢复到该表被删除的时间之前。现在时间是下午 3 点。
如何在不丢失其他两个数据库中三个小时的数据的情况下将 databaseB 恢复到下午 12 点?
配置文件
wal_level = archive
archive_mode = on
archive_command = 'test ! -f /opt/pgsql/logs/%f && cp %p /opt/pgsql/logs/%f'
max_wal_senders = 100
Run Code Online (Sandbox Code Playgroud)
恢复配置文件
restore_command = 'cp /opt/pgsql/logs/%f %p'
recovery_target_time = '2012-06-29 11:59:59 CEST'
Run Code Online (Sandbox Code Playgroud)
我在上午 9 点运行了我的基本备份
pg_basebackup -h 127.0.0.1 -D /opt/pgsql/backup
Run Code Online (Sandbox Code Playgroud)
PostgreSQL 服务在下午 3 点关闭。
我会做一个时间点恢复到不同的位置,恢复到所需的时间,然后 pg_dump 问题数据库。我会在正常位置删除一个数据库,再次创建它,然后加载 pg_dump 输出。
在开始这样的操作之前,请确保制作并保存集群数据目录树的文件系统级副本。
| 归档时间: |
|
| 查看次数: |
1020 次 |
| 最近记录: |