PostgreSQL 备份恢复工具之 Barman

barman


Barman 简介

Barman(Backup and Recovery Manager,备份与恢复管理器)是一个用于 PostgreSQL 数据库灾难恢复的开源管理工具,使用 Python 编写。Barman 使得企业能够执行多个关键业务数据库的远程备份,并且协助 DBA 执行灾难时的数据恢复。

Barman 用于 PostgreSQL 数据库的物理备份,与 Oracle 的备份恢复工具 RMAN 非常类似。

Barman 由 2ndQuadrant 公司开发和维护,基于 GNU GPL 3 协议发行。

Barman 主要的功能和目标如下:

  • PostgreSQL 服务器的完全物理热备
  • 时间点恢复(PITR)
  • 管理多个 PostgreSQL 服务器
  • 通过 rsync/SSH 或 pg_basebackup 执行远程备份(包括 9.2+ 备用服务器)
  • 支持本地和远程(通过 SSH)恢复
  • 支持 WAL 归档和流复制
  • 支持同步 WAL 流复制(“零数据丢失”,PRO=0)
  • 增量备份与恢复
  • 并行备份和恢复
  • WAL 文件的集中管理,增强了与备用服务器之间的集成
  • 管理备份和 WAL 文件的保留策略
  • 获取服务器状态和信息
  • WAL 文件压缩(bzip2、gzip 或者 custom)
  • 通过备份目录管理基础备份和 WAL 文件
  • 简单单一的 INI 配置文件
  • 完全使用 Python 编写
  • 恢复时的 PGDATA 和表空间位置移动
  • 备份通用信息和磁盘占用信息
  • 服务器备份诊断
  • 与标准归档工具(例如 tar)进行集成
  • 备份前/后的钩子脚本
  • 元数据的本地存储

Barman 与 pg_dump 对比

pg_dump 是执行 PostgreSQL 逻辑备份的官方工具。逻辑备份是数据库中所有对象和数据的一个快照。通常来说,执行逻辑备份是一个很好的实践,但是对于灾难恢复而言并不足够。

如果你每天在早上 3 点执行一次逻辑备份,然后在下午 6 点发生系统故障,可能会丢失 15 个小时的交易数据。对于大多数的关键业务场景而言,这都是无法接受的。

从另一方面来说,Barman,使用 PostgreSQL 物理备份技术,能够保证非常低的恢复点目标(RPO)。基于 PostgreSQL 的业务系统推荐使用物理备份实现灾难恢复,而 Barman 能够提供使简单易行的备份管理以及可靠的恢复。

下一步:Barman 文档

相关文章

文章浏览阅读601次。Oracle的数据导入导出是一项基本的技能,...
文章浏览阅读553次。开头还是介绍一下群,如果感兴趣polardb...
文章浏览阅读3.5k次,点赞3次,收藏7次。折腾了两个小时多才...
文章浏览阅读2.7k次。JSON 代表 JavaScript Object Notation...
文章浏览阅读2.9k次,点赞2次,收藏6次。navicat 连接postgr...
文章浏览阅读1.4k次。postgre进阶sql,包含分组排序、JSON解...