pgBackRest 2.60.0 介绍与选型指南

pgBackRest 2.60.0(2026-10-18 发布的最新稳定版)软件定位、核心架构(并行备份/全量差异增量/WAL 归档 PITR/多仓库/对象存储)、功能特性、官方指南最小上手流程与同类选型量化对比(Barman 3.20.1、WAL-G 3.0.9、pg_dump、Bacula),全部数据来自官方来源联网查证(查询日期 2026-10-20)。

pgBackRestPostgreSQL备份恢复2026/10/20

pgBackRest 2.60.0 介绍与选型指南

目标:说清 pgBackRest 是什么、截至查询日官方最新稳定版本是哪个、核心架构与功能特性怎样、最小上手流程长什么样,以及在什么场景该选 pgBackRest、什么场景应转向同类工具(Barman、WAL-G、pg_dump、Bacula)。本文为认知篇(A1):不做本地安装实测,全部版本号、特性与量化数据均来自官方来源联网查证,关键论断随文标注来源与查询日期(2026-10-20);安装、配置与命令的逐条实测见本专栏部署/配置/命令三篇。

一、信息基准

本章先交代"信息从哪来、以哪个版本为基准",便于读者判断时效并自行复核。

1.1 查询与版本基准

  • 查询日期:2026-10-20。
  • 基准版本:pgBackRest 2.60.0。依据:GitHub Releases 页面当前最新发布为 v2.60.0(标题"Page Checksum Errors and Object Store Prefetch");PostgreSQL 官网新闻《pgBackRest 2.60.0 Released》发布于 2026-10-18;PostgreSQL 官方 Wiki 的 Ecosystem:Backup 页面(2026-10-18 更新)同样记录 Current Version: 2.60.0。
  • 口径说明:pgBackRest 官网首页在查询日(2026-10-20)仍标注"v2.59.3 is the current stable release"、新闻停留在 2026-10-04——官网首页文字更新略滞后于 GitHub 发布节奏,本文以 GitHub Releases 与 postgresql.org 新闻为准判定 2.60.0 为最新稳定版,并如实记录这一差异,读者复核时以官网 Release 页为准。
  • 写作方式:本篇为纯认知与选型文档,不做本地实测;所有版本、特性、量化数据以官方来源为准并随文标注。安装/配置/命令的实测结论见本专栏 B1/C1/D1 三篇。

1.2 官方来源清单

信息项官方来源 URL用途
官网首页(功能清单/许可/赞助商)https://pgbackrest.org/特性归纳、MIT 许可、赞助方
GitHub Releaseshttps://github.com/pgbackrest/pgbackrest/releases2.60.0 及近期版本发布说明
postgresql.org 新闻https://www.postgresql.org/about/news/pgbackrest-2600-released-3416/2.60.0 发布日期(2026-10-18)
官方 Wiki 生态页https://wiki.postgresql.org/wiki/Ecosystem:Backup兼容 PG >= 9.6、当前版本交叉印证
配置参考https://pgbackrest.org/configuration.html配置项权威出处
命令参考https://pgbackrest.org/command.html命令权威出处
用户指南索引https://pgbackrest.org/user-guide-index.html各发行版/PG 版本上手指南
PGDG APT 仓库https://apt.postgresql.org/pub/repos/apt/Ubuntu/Debian 官方打包版本实查
shields.io 徽章https://img.shields.io/github/stars/pgbackrest/pgbackrest.jsonGitHub 星数取证(规避 GitHub API 限流)

💡 说明:GitHub API 对匿名请求限流严格,本文所有星数均改用 shields.io 的 JSON 徽章接口取证(2026-10-20),数据与仓库页一致。

二、软件概述

2.1 pgBackRest 是什么

pgBackRest 是一款开源的 PostgreSQL 物理备份与恢复工具,官方定位一句话:"Reliable PostgreSQL Backup & Restore——reliably scales up to the largest databases and workloads"(可靠地扩展到最大的数据库与工作负载)(来源:pgbackrest.org 官网首页,查询日期 2026-10-20)。它通过并行处理与**高效压缩算法(lz4、zstd)**解决备份通常的压缩瓶颈,以"仓库(repository)"统一管理全量/差异/增量备份与 WAL 归档,并原生支持 S3、Azure、GCS 三类兼容对象存储作为仓库后端(来源同上)。

形态上,pgBackRest 是一个无守护进程的 CLI 工具:pgbackrest 单一二进制承担备份、恢复、WAL 归档推送/获取、校验、过期清理等全部动作,按需拉起并行子进程,用自定义协议在"数据库主机"与"仓库主机"之间通信,支持经 TLS 或 SSH 远程操作(来源:官网 Features "Local or Remote Operation",查询日期 2026-10-20)。

💡 技术拓展:PostgreSQL 的备份方案首先要分清"物理备份"与"逻辑备份"两大流派,这决定了工具形态与恢复粒度——

流派代表工具备份内容恢复粒度典型用途
物理备份pgBackRest、Barman、WAL-G、pg_basebackup数据目录的文件级/块级副本 + WAL整集群(实例级)容灾、PITR、整库迁移
逻辑备份pg_dump / pg_dumpallSQL 级导出(库/模式/表)库/表/行级跨版本升级、单库抽取

两者是互补而非替代关系:物理备份负责"整库快速恢复 + 时间点恢复(PITR)",逻辑备份负责"细粒度导出与跨大版本迁移"。pgBackRest 属于物理流派;pg_dump 属于逻辑流派。平台既有 PostgreSQL 文档见 《PostgreSQL 18.6 介绍与选型指南》。

2.2 版本格局:2.60.0 为当前最新稳定版

pgBackRest 采用 主版本.次版本.修订号 的 2.x 版本线,发布节奏快、修订频繁。截至查询日(2026-10-20)的近期版本格局(来源:GitHub Releases 页,查询日期 2026-10-20):

版本发布日期主题与要点
2.60.02026-10-18页校验和错误处理(checksum-page-error 选项)、GCS Workload Identity Federation、对象存储多文件/多范围预取;构建体系迁移到 Python/meson
2.59.32026-10-04修复弱加密子密钥/盐值缺陷(配合官网同日安全公告《Weak Encryption Subkeys and Salts》)
2.59.22026-09-27PostgreSQL 19beta4 支持;修复 S3 版本列表分页、Azure SAS 认证头等
2.59.12026-09(下旬)PostgreSQL 19beta3 支持
2.59.02026-09PostgreSQL 19 支持;安全行为变更:默认仅 restore 允许 root 运行(其余命令需 allow-root);新增 archive-expire-before、S3 Outposts、Azure 批量删除;发行包改版(预生成文档/man 页的 pgbackrest-{version}.tar.gz)

来源:GitHub Releases 逐条 release notes(查询日期 2026-10-20)。

关键解读:其一,2026 年 9–10 月一个月内连续发布 2.59.0 → 2.60.0 共 5 个版本,其中 3 个是为追赶 PostgreSQL 19 的 beta 测试节奏,说明该工具与 PG 大版本跟进非常紧密;其二,2.60.0 将构建体系从 configure/make 迁移到 Python/meson(release notes:"Migrate code generation from C to Python"、发行包自带 meson.build),从源码编译 2.60.0 时构建命令与旧版教程不同,这是选版本、写部署方案时最容易踩的差异点;其三,2.59.0 起的 root 限制属于安全默认值收紧,脚本里以 root 直接跑 backup 会报错,升级前需评估。

2.3 许可与治理:MIT + PostgreSQL 全球开发组生态

pgBackRest 采用 MIT 许可(来源:官网首页"completely free and open source under the MIT license"与仓库 LICENSE 文件,LICENSE 注明 "Portions Copyright (c) 2015-2026, The PostgreSQL Global Development Group",取证日期 2026-10-20)。MIT 属最宽松一类开源许可,允许商用、闭源集成而无传染性义务。

治理上,pgBackRest 是 PostgreSQL 官方生态的组成部分:PostgreSQL 官网会为其发布版本新闻,官方 Wiki 生态页收录其兼容性条目(interoperability level >= 9.6,即支持 PostgreSQL 9.6 及以上,2026-10-18 更新);项目由核心维护者 David Steele 与社区共同维护,官网赞助商名单包括 AWS、Supabase、pgEdge、Tiger Data、Percona、Eon、Xata、Dalibo、Data Egret 等(来源:官网首页 Sponsors,查询日期 2026-10-20)。解读:PG 官方生态背书 + 重度商业用户赞助,是判断"长期维护可靠性"时的重要加分项。

三、核心架构

3.1 进程模型与自定义协议:本地/远程一体

pgBackRest 的架构核心是一条自定义并行协议:主进程按命令类型派生本地子进程与远程子进程,压缩、校验和、传输以流式方式边拷贝边处理(来源:官网 Features "Parallel Backup & Restore""Streaming Compression & Checksums",查询日期 2026-10-20)。要点有三:

  1. 并行即默认设计:备份与恢复都可由 process-max 参数拉起多个工作进程并行压缩/拷贝;官方明确"压缩通常是备份操作的瓶颈,pgBackRest 用并行处理和更高效的压缩算法(lz4、zstd)解决"(官网 Features 原文归纳)。
  2. 本地或远程同构:通过 TLS 或 SSH 即可把仓库放在远端"仓库主机"上,且协议层内置了对 PostgreSQL 的查询接口——远程模式下不需要直接远程访问 PostgreSQL,减小攻击面(官网 Features "Local or Remote Operation")。
  3. 异步 WAL 通道:archive-push(推 WAL 入仓)与 archive-get(取 WAL 回放)是两条独立命令,支持并行与异步执行;异步 archive-get 会维护一个已解压就绪的 WAL 本地队列,官方称对高写入量库和 S3 等高延迟存储收益最大(官网 Features "Parallel, Asynchronous WAL Push & Get")。

3.2 仓库与备份集:全量/差异/增量(文件级与块级)

所有备份存入"仓库",仓库内由备份集(backup set)与 WAL 归档组成,每个备份集带一份 manifest 清单,记录每个文件的校验和(官网 Features "Backup Integrity""Delta Restore")。pgBackRest 支持三级备份类型,且"不受 rsync 的时间分辨率问题影响,差异/增量备份无需对每个文件做校验和即可安全执行"(官网 Features 原文归纳):

备份类型拷贝内容依赖恢复所需
全量(full)整个集群数据目录无仅自身 + 归档 WAL
差异(diff)自最近一次全量以来变更的文件一个全量全量 + 该差异 + 归档 WAL
增量(incr)自最近一次任意类型备份以来变更的文件全量/差异/增量链全量 + 链上各增量 + 归档 WAL

💡 技术拓展:增量还有"文件级"与"块级"两种粒度。文件级增量以整个文件为最小单位(文件变了整份重拷);块级增量(pgBackRest 的 block incremental,需开启 repo-bundle/repo-block)只拷贝文件内变化的块,对"大文件小改动"的数据库负载能显著省空间与时间(官网 Features "Full, Differential, & Incremental Backups (at File or Block Level)",查询日期 2026-10-20)。开启 bundle 后文件打包存储,还支持在压缩关闭 + 硬链接开启时对仓库备份做快照直接拉起集群,官方称适合 TB 级库的传统恢复提速(官网 Features "Backup Integrity")。

多仓库是另一项架构级能力:可同时配置多个仓库(如"本地仓库短保留快速恢复 + 远端仓库长保留冗余"),一次备份可写入多个仓库(官网 Features "Multiple Repositories")。仓库可位于本地磁盘或 S3/Azure/GCS 兼容对象存储,并支持整仓加密(官网 Features "S3, Azure, and GCS Compatible Object Store Support""Encryption")。

3.3 WAL 归档与时间点恢复(PITR)

物理备份的一致性锚点是 WAL(预写日志)。pgBackRest 的完整性规则是:备份拷贝完文件后,会等到"使该备份一致所需的每一段 WAL"都进入仓库才算完成(官网 Features "Backup Integrity",查询日期 2026-10-20)。配合持续归档,恢复时先还原某个备份集、再重放归档 WAL 到指定目标,即实现 PITR:可按时间、事务 ID、恢复点等目标停止,并可选择目标达成后的动作(暂停/提升/关闭)。保留策略(retention)按全量/差异备份个数滚动过期,并保证"旧备份仍一致所需的 WAL"不被提前清掉(官网 Features "Backup Rotation & Archive Expiration")。

此外,2.59.0 新增 archive-expire-before 选项,可独立清理 WAL 归档(来源:GitHub Releases v2.59.0 notes,查询日期 2026-10-20)。

3.4 对象存储、加密与防勒索

仓库后端三类原生对象存储:S3、Azure、GCS 兼容存储,"容量与保留几乎无上限"(官网 Features)。加密方面可对仓库整体加密,备份 wherever 存储都安全(官网 Features "Encryption")。防勒索思路是利用对象存储的版本化能力:仓库存放在版本化对象存储上时,pgBackRest 可以按时间点读取仓库的"历史版本",即便备份被误删、恶意软件或勒索软件破坏,也能从破坏发生前的目标时间恢复数据;S3 的对象锁、GCS/Azure 的软删除可提供进一步防篡改(官网 Features "Ransomware & Malware Protection",查询日期 2026-10-20)。

对象存储相关能力在近三个版本持续增强:2.59.0 加入 S3 Outposts 与 Azure 批量删除,2.59.2 修复 S3 版本列表分页,2.60.0 加入 GCS Workload Identity Federation 与对象存储多文件/多范围读预取(来源:GitHub Releases,查询日期 2026-10-20)。

四、功能特性

4.1 官方特性清单归纳

以下特性全部来自官网首页 Features 段落(查询日期 2026-10-20),每条为官方明示能力:

特性官方要点
并行备份与恢复多进程并行 + lz4/zstd 高效压缩,解决压缩瓶颈
本地/远程操作自定义协议经 TLS/SSH 远程备份/恢复/归档;远程访问 PostgreSQL 非必需
多仓库本地短保留 + 远端长保留等多仓库组合
全量/差异/增量(文件或块级)不受 rsync 时间分辨率问题影响;块级增量省空间
备份轮转与归档过期按全量/差异保留策略覆盖任意时间窗;旧备份所需 WAL 自动保留
备份完整性每文件校验和,恢复/verify 时复检;等待一致性 WAL 入仓;目录/文件级 fsync
页校验和(page checksums)开启 PG 页校验和后备份时逐页校验,提前发现页级损坏
备份续传(resume)中断的备份可从断点续跑,仓库侧校验已拷贝文件
流式压缩与校验边拷贝边压缩/校验;仓库在远端时压缩发生在数据库主机侧
Delta 恢复按 manifest 校验和跳过未变文件,并行下恢复时间大幅缩短
并行异步 WAL push/get异步归档与回放队列;WAL 重复推送自动去重;版本/系统标识符比对防误配
表空间与链接支持表空间完全支持,恢复时可重映射到任意位置
S3/Azure/GCS 对象存储仓库可放三类兼容对象存储
仓库加密整仓加密
勒索软件防护版本化对象存储上按时间点读取仓库历史版本
PG 版本兼容官方声明支持十个 PostgreSQL 大版本(5 个受支持版本 + 5 个刚 EOL 版本)

4.2 2.60.0 版本要点(2026-10-18)

来源:GitHub Releases v2.60.0 notes 与 postgresql.org 发布新闻(查询日期 2026-10-20)。

  • 重要行为变更(IMPORTANT NOTE):restore 命令遇到无效页校验和的恢复文件将直接报错停止(集群不完整、无法启动,必须重跑 restore);expire 拒绝对"最老保留备份含校验和错误"的仓库执行过期;可用 checksum-page-error=n 降级为告警。这是 2.60.0 把数据完整性检查提升为"硬失败"的重要变化。
  • 新特性:checksum-page-error 选项;GCS Workload Identity Federation;对象存储多文件/多范围读预取。
  • 改进:支持 OpenSSL 4、支持 illumos 构建、减少远端进程 keep-alive 请求、Azure 批量子请求重试等。
  • 构建/文档:代码生成从 C 迁移到 Python,发行 tarball 用 meson 构建(实测构建命令为 meson setup build . + ninja -C build + meson install -C build,与旧版 configure/make 不同);官网文档站同步改版。

4.3 兼容性与获取渠道(实查)

  • PostgreSQL 兼容:官方 Wiki 生态页记录 interoperability >= 9.6(2026-10-18 更新);官网声明"支持十个 PostgreSQL 大版本";2.59.x 已跟进 PostgreSQL 19beta3/beta4(来源见 1.2/2.2,查询日期 2026-10-20)。
  • 打包版本(实查 PGDG APT 仓库,2026-10-20):Ubuntu 22.04(jammy)的 PGDG 源当前提供 pgbackrest 2.59.3(候选版本,另存 2.59.2/2.59.1),2.60.0 发布仅两天尚未进入该源;Ubuntu universe 源仅 2.37。生产环境若要最新版需源码编译或等待打包同步。
  • 官方用户指南:提供 RHEL/CentOS 与 Debian/Ubuntu 等多发行版、多 PG 大版本组合的指南(user-guide-index.html),Debian/Ubuntu 推荐经 PGDG 仓库安装。

五、快速开始(最小可用示例,官方指南引述)

5.1 五步最小流程(来源:官方用户指南)

以下流程整理自官方用户指南(https://pgbackrest.org/user-guide.html 及 Debian/Ubuntu 指南,引述日期 2026-10-20),用于建立整体认知;每条命令的逐项实测回显见本专栏部署与命令篇。

  1. 安装:Debian/Ubuntu 经 PGDG 仓库 apt install pgbackrest(同时建议安装目标版本 PostgreSQL,两者在同一仓库提供)。
  2. 写最小配置:编辑 /etc/pgbackrest/pgbackrest.conf,[global] 段给 repo1-path(仓库路径)与 repo1-retention-full(全量保留个数),[db] 段给 pg1-path(PG 数据目录)。
  3. 配置 PG 归档:postgresql.conf 中设置 archive_mode = on、archive_command = 'pgbackrest --stanza=db archive-push %p',重启实例。
  4. 创建 stanza 并校验:pgbackrest --stanza=db stanza-create 创建仓库元数据,再 pgbackrest --stanza=db check 验证归档与备份配置可用。
  5. 首次全量备份与查看:pgbackrest --stanza=db backup(默认全量),pgbackrest --stanza=db info 查看备份集与 WAL 归档状态。

5.2 本文与本专栏的分工

六、适用场景与限制

6.1 适用场景

  • 中大型 PG 实例的常规物理备份:并行压缩 + 增量/块级增量 + 保留轮转,是官方功能覆盖最完整的组合。
  • PITR 硬需求:持续 WAL 归档 + 任意备份集 + WAL 重放到指定时间/事务点。
  • 仓库外置与容灾:仓库放专用主机(TLS/SSH)或 S3/Azure/GCS 对象存储,多仓库异地冗余;对象存储版本化 + 软删除/对象锁构成防勒索层。
  • TB 级恢复提速:delta 恢复、bundle + 硬链接快照直接拉起、对象存储预取(2.60.0)。
  • 合规与完整性审计:整仓加密、每文件校验和、verify 命令、页校验和早期发现页损坏。

6.2 限制与注意

  • 仅面向 PostgreSQL(9.6 及以上;MySQL/MongoDB 等不在范围内——这正是 WAL-G 的差异点,见第七章)。
  • 物理备份粒度为整集群:单表/单库级别的导出仍需 pg_dump 等逻辑工具配合。
  • 需要 WAL 归档通道:archive_mode 必须开启,高频写入库要评估归档吞吐(可用并行异步归档缓解)。
  • 2.59.0 起 root 运行受限于 restore:其余命令以 root 执行需显式 allow-root(来源:v2.59.0 release notes IMPORTANT NOTE,查询日期 2026-10-20),旧脚本升级时需调整运行用户。
  • 最新版本进入发行版仓库有滞后:如 2.60.0 发布两天后 PGDG 源仍为 2.59.3(实查 2026-10-20),追新需源码编译。
  • 2.60.0 构建体系变更为 meson:沿用旧版 configure/make 教程会直接失败。

七、同类选型对比(量化)

7.1 候选工具与量化数据总览

对比对象按任务书要求覆盖 Barman、WAL-G、pg_dump(PostgreSQL 内置)与 Bacula。星数与版本均为 shields.io JSON 徽章取证(2026-10-20),许可证取证自各官方仓库 LICENSE/README。

维度pgBackRestBarmanWAL-Gpg_dump / pg_basebackupBacula
定位PG 专用物理备份恢复PG 专用物理备份恢复(EDB 出品)多数据库归档恢复(PG/MySQL/MSSQL/…)PG 内置逻辑导出 / 物理基础备份通用网络备份框架(异构主机/磁带)
最新版本(2026-10-20)2.60.0(2026-10-18)3.20.1v3.0.9随 PostgreSQL 18.6 内置以 bacula.org 官方发布页为准
GitHub 星数4.5k3.3k(EnterpriseDB/barman)4.3k(wal-g/wal-g)不适用(随 PG 主仓库)无官方 GitHub 仓库口径(社区镜像非官方)
许可证MITGPL-3.0Apache-2.0(lzo 部分 GPLv3+)PostgreSQL License社区版 AGPL(以官方为准)
语言/形态C,单二进制 CLIPython,CLI + 服务端Go,单二进制 CLIC,随 PG 发行C/C++,director/storage/file 三角色守护进程
备份类型全量/差异/增量(文件+块级)全量/增量(rsync 或流复制基备)全量/增量(页级 delta)pg_basebackup 全量;pg_dump 逻辑全量/差异/增量(文件级)
并行压缩原生并行 + lz4/zstd 多算法并行作业(parallel jobs)原生并行 + LZ4/LZMA/ZSTD/Brotli无并行压缩客户端侧压缩
PITR原生(WAL 归档 + 任意目标)支持(WAL 归档 + recovery 配置)支持(WAL 归档 + delta 恢复)pg_basebackup 需自建 WAL 归档链路不适用(非 PG WAL 语义)
对象存储S3/Azure/GCS 原生仓库(含版本化防勒索)经 barman-cloud 系列工具上传 S3/Azure/GCSS3/GCS/Azure/SFTP 原生无插件/磁带生态
保留管理/过期内置 expire + retention 策略内置 retention 策略保留策略(对象生命周期配合)无(手工管理)内置 catalog/保留周期
远程仓库主机原生(TLS/SSH 协议)支持(passive 模式/rsync)对象存储即远端本机为主原生 C/S 架构
部署复杂度低(单二进制 + 单配置文件)中(服务端 + 可选 Web)低-中最低高(多守护进程 + catalog 数据库)

量化数据来源:shields.io 星数/版本徽章(pgbackrest/pgbackrest 4.5k、wal-g/wal-g 4.3k + v3.0.9、EnterpriseDB/barman 3.3k + release/3.20.1,2026-10-20);pgBackRest 2.60.0 发布日期来自 GitHub Releases 与 postgresql.org 新闻;许可证来自 pgBackRest LICENSE(MIT)、Barman LICENSE(GPL-3.0)、WAL-G README(Apache-2.0,lzo 为 GPLv3+,2026-10-20 取证);WAL-G 定位("archival restoration tool for PostgreSQL, MySQL/MariaDB, and MS SQL Server (beta for MongoDB and Redis)")来自其官方 README(2026-10-20 取证)。

7.2 逐项解读

  • pgBackRest vs Barman:两者同为 PG 专用物理备份工具、同在 PostgreSQL 官方生态(Wiki 同页收录)。量化学星上 pgBackRest 4.5k 略高于 Barman 3.3k;版本节奏上 pgBackRest 2026 年 9–10 月连发 5 版(含 PG19 beta 跟进),架构上 pgBackRest 的块级增量、多仓库、对象存储防勒索与并行异步 WAL 通道更激进;Barman 的优势在 EDB 商业支持与既有 RPO 报告/Web 管理生态。MIT vs GPL-3.0 对嵌入式/闭源集成场景有实质差异。
  • pgBackRest vs WAL-G:WAL-G 星数 4.3k 与 pgBackRest 接近,最新版 v3.0.9。核心差异是多数据库支持(WAL-G 官方 README 明确支持 PostgreSQL、MySQL/MariaDB、MS SQL Server,Mongo/Redis 为 beta)与 Go 单二进制;pgBackRest 则在 PG 语义上做得更深(页校验和校验、备份等待一致性 WAL、块级增量、表空间重映射)。纯 PG 环境选 pgBackRest 语义更完整;异构数据库混合机房 WAL-G 一把梭更省心。
  • pgBackRest vs pg_dump/pg_basebackup:pg_dump 是逻辑导出(库/表粒度、跨大版本、无 PITR),pg_basebackup 是内置物理基础备份(无仓库管理、无校验仓库、无保留过期、无并行压缩)。小型实例用 pg_basebackup + 手工 WAL 归档也能凑出 PITR,但保留策略、完整性校验、增量与对象存储都要自建——这正是 pgBackRest 的价值区间。两者可共存:日常物理备份用 pgBackRest,跨版本升级/单库抽取用 pg_dump。
  • pgBackRest vs Bacula:Bacula 是通用网络备份框架(director/storage daemon/file daemon 三角色 + catalog 数据库 + 磁带库支持),面向异构主机文件级备份,不是 PG WAL 语义的原生实现,做 PG 的 PITR 属于"文件级快照 + 外挂归档"的拼装。已有 Bacula 基础设施、想统一纳管 PG 数据目录文件的团队可复用;以 PG 容灾/PITR 为中心的新建项目,pgBackRest 开箱即得的语义更完整。Bacula 无官方 GitHub 仓库口径(其官方分发在 bacula.org/SourceForge),量化社区活跃度时不应拿第三方镜像星数冒充。

7.3 版本节奏与社区活跃度(量化)

  • 发布频率:pgBackRest 2026-09 → 2026-10-18 之间发布 2.59.0/2.59.1/2.59.2/2.59.3/2.60.0 共 5 个版本,其中 2 个修订版属安全/缺陷快速响应(来源:GitHub Releases,查询日期 2026-10-20)。
  • PG 大版本跟进:PG 19 从 beta1 到 beta4 的每个节点都有对应 pgBackRest 支持版本(2.59.0→19beta2、2.59.1→19beta3、2.59.2→19beta4),属生态内跟进最快的备份工具之一(来源同上)。
  • 社区规模:GitHub 4.5k 星(shields.io,2026-10-20);赞助商含 AWS、Supabase、Percona、Dalibo 等 9 家在列(官网首页,2026-10-20);PostgreSQL 官网为其发版本新闻(2026-10-18)。
  • 打包分发:PGDG 官方 APT 仓库为 Debian/Ubuntu 全系维护 pgbackrest 包(jammy 当前 2.59.3,实查 2026-10-20),RHEL/CentOS 有官方用户指南路径。

7.4 选型建议(如果…则…)

  • 如果纯 PostgreSQL、要 PITR + 增量 + 对象存储 + 长期维护确定性 → 首选 pgBackRest(本专栏主角)。
  • 如果机房里 PG/MySQL/MSSQL 混合、想用一个工具管所有数据库的归档恢复 → 评估 WAL-G。
  • 如果已是 EDB 商业客户或需要 Barman 既有监控/Web 生态 → Barman 同样是官方生态一级选项。
  • 如果已有 Bacula/Bareos 基础设施、只把 PG 当普通文件负载纳管 → 可复用既有备份框架,但须自行补齐 PG 一致性与 WAL 归档方案。
  • 如果只是单库导出/跨大版本升级 → pg_dump 系列即可,不必引入物理备份栈。

八、参考链接