postgresql时间点恢复(Point-in-time recovery)

前提条件:

为了能做时间点恢复,要满足两点:

第一,做好基础备份

第二,配置好自动归档

在满足这两点之后,可以按以下步骤进行恢复

1.停止postgresql服务,把data目录和表空间目录(如果有)移到其他位置。备份这两个目录是防止万一,在恢复的过程中有可能需要。

2.把基础备份文件复制到postgresql原来的data目录和表空间目录(如果有)。

3.配置recovery.conf文件。

4.重新启动postgresql服务。

在以上的四个步骤中,有几个需要注意的问题。

在第二个步骤中,把基础备份文件复制到postgresql的data目录时,要注意owner问题,复制后要检查owner是否为postgres(这个是安装数据库时配置的用户)。另外(如果有表空间)还要检查一下data/pg_tblspc中的软连接是否正确,最后还要检查一下data目录本身的权限,要求是700,否则,会导致启动服务失败。

在配置recovery.conf时,最关键的是配置restore_command. 这个命令其实也简单,就是把归档中的日志文件复制到pg_wal目录下。和归档配置中的archive_command做相反的操作。

在配置recovery.conf中另外一个重要的事就是配置恢复到的时间点。默认情况下,恢复将会一直恢复到 WAL 日志的末尾。下面的参数可以被用来指定一个更早的停止点。在recovery_targetrecovery_target_lsnrecovery_target_namerecovery_target_timerecovery_target_xid中,最多只能使用一个,如果在配置文件中使用了多个,将使用最后一个。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值