2025年9月25日: PostgreSQL 18 发布!

Barman 1.5.0 发布

发布于 2015-09-28 作者 2ndQuadrant Italia

2ndQuadrant 自豪地宣布 PostgreSQL 的备份和恢复管理器 Barman 1.5.0 版本发布。

这个主要版本引入了 get-wal 命令,该命令将 Barman 转变为一个 WAL 矿机,您可以从中提取所需的任何事务日志文件。Barman 现在可以轻松地与任何 PostgreSQL 备用服务器集成,作为 WAL 同步的备用方法。

另一个重要的新功能是 重试钩子脚本,可以在备份命令或 WAL 文件归档之前或之后执行。与 Barman 中已有的标准钩子脚本不同,重试钩子脚本会无限期地执行,直到成功为止。

通过 1.5.0 版本,Barman 通过添加对 "wal_level" 设置的检查、禁止删除正在进行的备份、在开始备份前要求成功的 "check" 等来增强其健壮性。

Barman 现在会检查冲突的路径,确保同一目录不能被多个目标(例如,基础备份、WAL 归档、传入目录等)共享,即使在同一安装中的不同服务器之间也是如此。

在用户体验方面,"active" 选项允许用户出于操作目的暂时禁用 Barman 中的服务器,同时仍然可以访问其目录。

一些小错误也已修复。

有关更改的完整列表,请参阅下面的“发布说明”部分。

详细功能

Barman get-wal:由于 Barman 的 "get-wal" 命令,主服务器同步丢失的备用服务器的情况将不复存在。设计复杂的 PostgreSQL 数据库 HA 和 DR 架构,因为您现在可以依赖任何服务器的 '无限' WAL 文件源。查看 "barman-wal-restore" 脚本,了解如何将 "get-wal" 与您的 PostgreSQL 备用服务器集成。

重试钩子脚本:您现在可以通过在执行备份操作或归档 WAL 文件之前和之后插入自定义脚本来扩展 Barman,并且 Barman 会重复执行这些脚本,直到它们成功为止。您现在可以在 Barman 周围构建自己的管道,例如,一旦 WAL 文件到达 Barman,就可以将其存储在云中。

链接

发布说明

  • 添加对 "get-wal" 命令的支持,允许用户从特定服务器的归档中获取任何 WAL 文件。
  • 添加对重试钩子脚本的支持,这是一种特殊的钩子脚本,Barman 会尝试运行它们,直到成功为止。
  • 为服务器添加 "active" 配置选项,通过将其设置为 "False" 来临时禁用服务器。
  • 添加全局选项 "barman_lock_directory",用于更改锁文件的位置(默认值:'barman_home')。
  • 在开始备份之前执行完整的检查套件,并在一个或多个检查失败时跳过它。
  • 禁止删除正在进行的备份。
  • 在 "backup" 和 "recover" 操作期间分析 PostgreSQL 服务器的 include 指令。
  • 添加对 Barman 配置中冲突路径的检查,包括服务器内部(通过临时禁用服务器)和服务器之间(通过拒绝任何服务器的任何命令)。
  • 添加对 "wal_level" 的检查。
  • 添加 "barman-wal-restore" 脚本,用于在备用服务器上作为 "restore_command",与 "barman get-wal" 结合使用。
  • 实现标准的、一致的错误管理策略。
  • 改进备份的缓存管理。
  • 改进单元测试中的配置管理。
  • 教程和 man 页源代码已转换为 Markdown 格式。
  • 通过 Sphinx 添加代码文档。
  • 对负责管理 "backup" 和 "recover" 命令的代码进行全面重构。
  • 更改备份的内部目录结构。
  • 引入 "copy_method" 选项(目前固定为 "rsync")。
  • Bug 修复
    • 管理 PostgreSQL 配置文件中没有 '=' 的选项。
    • 保留时间线历史文件(修复:#70)。
    • 针对 SUSE Linux 上的 rsync 的变通方法(关闭:#13 和 #26)。
    • 禁用 postgresql.auto.conf 中危险的设置(关闭:#68)。
    • 修复 WAL 速率计算中的错误。

下载

关于

Barman(备份和恢复管理器)是一款用 Python 编写的 PostgreSQL 服务器灾难恢复开源管理工具。它允许您的组织在业务关键环境中对多个服务器进行远程备份,并在恢复阶段为 DBA 提供帮助。Barman 最受欢迎的功能包括备份目录、增量备份、保留策略、远程备份和恢复、WAL 文件和备份的归档和压缩。Barman 在 GNU GPL 3 下分发。