postgre 任意时间点备份恢复(阿里云)

简介&思路 阿里云的RDS for PostgreSQL目前提供的备份为物理备份,备份粒度可以自己设置,最频繁的基础备份可以做到一天一次。有了这个备份和归档日志,我们可以做到基于任意时间点(实际上是事务提交或回滚点的粒度)的恢复。 归档文件规律:采用从1开始顺序记录的16进制备份集起始归档:默认记录 ...
摘要由CSDN通过智能技术生成

       简介&思路

           阿里云的RDS for PostgreSQL目前提供的备份为物理备份,备份粒度可以自己设置,最频繁的基础备份可以做到一天一次。有了这个备份和归档日志,我们可以做到基于任意时间点(实际上是事务提交或回滚点的粒度)的恢复。   

          归档文件规律:采用从1开始顺序记录的16进制

          备份集起始归档:默认记录 第一份归档的序号。

         postgre engine 创建后 第一份备份集和第一份归档便同时开始备份记录,可以恢复 任意备份集 开始时间后的任意时间点。(给够足量的归档便可,否则恢复至最后的归档文件)

       简图:

          为了使java层代码对备份恢复的可控性,我们采用docker技术。整体思路:使用centos基础镜像安装postgre服务。下载全集备份和归档备份,分别解压对应的postgre/wal 目录。挂载docker对应   postgre:/pgdata  wal:/pgwal(pgwal为新建目录,commit到docker images中的) 通过修改对应配置文件pg_hba.conf 、postgresql.conf、  recovery.conf 来实现任意时间点恢复。   

     操作过程&&摸索实践

          为了保证postgre服务的版本兼容性,最好使用阿里公有云使用的版本。版本下载请转官方:https://www.postgresql.org/ftp/source/ 具体安装过程参考:https://blog.csdn.net/qq_33854781/article/details/81782323 

          安装成功后会生成 pgdata 和postgresql 目录。我们主要操作pgdata。
pgdata目录结构:
.
|-- base
|   |-- 1
|   |-- 12998
|   |-- 13003
|   `-- 16398
|-- global
|-- pg_clog
|-- pg_dynshmem
|-- pg_log
|-- pg_logical
|   |-- mappings
|   `-- snapshots
|-- pg_multixact
|   |-- members
|   `-- offsets
|-- pg_notify
|-- pg_replslot
|-- pg_serial
|-- pg_snapshots
|-- pg_stat
|-- pg_stat_tmp
|-- pg_subtrans
|-- pg_tblspc
|-- pg

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值