2016年2月29日:2ndQuadrant 自豪地宣布推出 Barman(PostgreSQL 的备份和恢复管理器)1.6.0 版本。
此重大版本引入了 WAL 流式传输支持,通过持续将恢复点目标(Recovery Point Objective)减少到接近 0,从而提高了基于 Barman 的 PostgreSQL 备份解决方案的灾难恢复能力。目前,Barman 仍然需要基于 PostgreSQL 的 'archive_command' 的标准 WAL 归档。一旦 Barman 支持复制槽(PostgreSQL 9.4 可用),此限制将被移除。
Barman 1.6.0 还引入了对pigz压缩的支持,以及 Python 原生的 gzip 和 bzip2 压缩算法。
一些小错误也已修复。
有关更改的完整列表,请参阅下面的“发布说明”部分。
通过 'streaming_conninfo' 服务器选项支持流复制连接
支持 'streaming_archiver' 选项,该选项允许 Barman 通过 PostgreSQL 的原生流协议接收 WAL 文件。当设置为 'on' 时,它依赖 'pg_receivexlog' 来接收 WAL 数据,从而降低了恢复点目标。目前,WAL 流式传输是一项附加功能(仍然需要标准日志归档)。
实现 'receive-wal' 命令,当 'streaming_archiver' 开启时,该命令包装 'pg_receivexlog' 进行 WAL 流式传输。添加 '--stop' 选项以通过流协议停止接收 WAL 文件。添加 '--reset' 选项以重置流状态并从 Postgres 中的当前 xlog 重新开始。
通过 'cron' 命令自动管理(启动和停止)'receive-wal' 命令
支持 'path_prefix' 配置选项
引入 'archiver' 选项(目前固定为 'on'),该选项通过 PostgreSQL 的 'archive_command' 进行日志传输,为特定服务器启用连续 WAL 归档。
支持 'streaming_wals_directory' 和 'errors_directory' 选项
在 'archive-wal' 命令中管理 WAL 重复项,并与 'check' 命令集成
在 'streaming_archiver' 启用时,在 'check' 命令中验证 'pg_receivexlog' 是否正在运行
在 'check' 命令中验证是否存在失败的备份
接受传入目录中的压缩 WAL 文件
添加对 pigz 压缩器的支持(感谢 Stefano Zacchiroli)
实现 pygzip 和 pybzip2 压缩器(基于 Christoph Moench-Tegeder 的初步想法)
在备份结束时创建一个隐式恢复点
'barman status' 中的 PostgreSQL 数据文件当前大小
允许 PostgreSQL 9.5 服务器使用 'archive_mode=always'(感谢 Christoph Moench-Tegeder)
负责连接到 PostgreSQL 的代码进行完全重构
改进 cron 命令关于子进程的消息
原生支持 Python >= 3.3
行为更改
Barman(备份和恢复管理器)是一款用 Python 编写的 PostgreSQL 服务器灾难恢复开源管理工具。它允许您的组织在业务关键环境中对多个服务器进行远程备份,并在恢复阶段为 DBA 提供帮助。Barman 最受欢迎的功能包括备份目录、增量备份、保留策略、远程备份和恢复、WAL 文件和备份的归档和压缩。Barman 在 GNU GPL 3 下分发。