返回更新列表
新发布Aug 17, 2026

pgbackrest release/2.59.1

适用于 PostgreSQL 的并行备份与恢复解决方案,支持加密、增量恢复及多云对象存储,满足企业级灾难恢复需求。

分享

pgBackRest
可靠的 PostgreSQL 备份与恢复

简介

pgBackRest 是一款可靠的 PostgreSQL 备份与恢复解决方案,可无缝扩展以应对最大规模的数据库和工作负载。

pgBackRest v2.59.2 是当前稳定版本。发行说明见 Releases 页面。

如果您喜欢 pgBackRest,请在 GitHub 上给我们一个 star!

新闻

2026年9月27日 - pgBackRest 2.59.2 发布

2026年8月17日 - pgBackRest 2.59.1 发布

2026年7月20日 - 新的发行版压缩包

特性

并行备份与恢复

压缩通常是备份操作期间的瓶颈,因此 pgBackRest 通过并行处理和更高效的压缩算法(如 lz4 和 zstd)解决了这一问题。

本地或远程操作

自定义协议允许 pgBackRest 以最少的配置在本地或通过 TLS/SSH 远程执行备份、恢复和归档。协议层还提供了查询 PostgreSQL 的接口,因此永远不需要远程访问 PostgreSQL,从而增强了安全性。

多个仓库

多个仓库允许例如:一个具有最小保留期的本地仓库用于快速恢复,以及一个具有更长保留期的远程仓库用于冗余和企业范围内的访问。

全量、差异和增量备份(文件或块级别)

支持全量、差异和增量备份。pgBackRest 不受 rsync 时间分辨率问题的影响,使差异和增量备份安全可靠,无需对每个文件进行校验和计算。块级备份仅复制文件中已更改的部分,从而节省空间。

备份轮换与归档过期

可以为全量和差异备份设置保留策略,以覆盖任意时间段。WAL 归档可以针对所有备份进行维护,也可以严格针对最近的备份进行维护。在后一种情况下,使较旧备份保持一致所需的 WAL 将保留在归档中。

备份完整性

备份中的每个文件都会计算校验和,并在恢复或验证期间重新检查。备份完成文件复制后,会等待使备份保持一致所需的所有 WAL 段到达仓库。

仓库中的备份可以以与标准 PostgreSQL 集群相同的格式存储(包括表空间)。如果禁用压缩并启用硬链接,则可以对仓库中的备份进行快照,并直接在快照上启动 PostgreSQL 集群。这对于以传统方式恢复耗时数小时的 TB 级数据库非常有利。

所有操作都利用文件和目录级别的 fsync 来确保持久性。

页面校验和

如果启用了页面校验和,pgBackRest 将验证备份期间复制的每个文件的校验和。在全量备份期间验证所有页面校验和,在差异和增量备份期间验证已更改文件中的校验和。

验证失败不会停止备份过程,但会将详细说明哪些页面验证失败的警告输出到控制台和文件日志。

此功能允许及早检测页面级损坏,在包含有效数据副本的备份过期之前。

备份恢复

中断的备份可以从停止的位置恢复。已复制的文件将与清单中的校验和进行比较以确保完整性。由于此操作可以完全在仓库主机上进行,因此减少了对 PostgreSQL 主机的负载并节省了时间,因为校验和计算比压缩和重新传输数据更快。

流式压缩与校验和

无论仓库位于本地还是远程,在将文件复制到仓库时都会以流式方式执行压缩和校验和计算。

如果仓库位于仓库主机上,压缩在 PostgreSQL 主机上执行,文件以压缩格式传输并简单地存储在仓库主机上。当禁用压缩时,会使用较低级别的压缩,以有效利用可用带宽,同时将 CPU 开销降至最低。

增量恢复

清单包含备份中每个文件的校验和,因此在恢复期间可以使用这些校验和来极大地加速处理。在增量恢复中,首先删除备份中不存在的任何文件,然后为剩余文件生成校验和。与备份匹配的文件保留在原位,其余文件照常恢复。并行处理可以显著缩短恢复时间。

并行、异步 WAL 推送与获取

包含用于将 WAL 推送到归档和从归档获取 WAL 的专用命令。这两个命令都支持并行处理以加速处理,并异步运行以向 PostgreSQL 提供最快的响应时间。

WAL 推送会自动检测多次推送的 WAL 段,并在段相同时进行去重,否则会引发错误。异步 WAL 推送允许将传输卸载到另一个进程,该进程并行压缩 WAL 段以实现最大吞吐量。这对于写入量极高的数据库来说可能是一个关键特性。

异步 WAL 获取维护一个本地 WAL 段队列,这些段已解压缩并准备好重放。这减少了向 PostgreSQL 提供 WAL 所需的时间,从而最大限度地提高重放速度。高延迟连接和存储(如 S3)受益最大。

推送和获取命令都通过比较 PostgreSQL 版本和系统标识符来确保数据库和仓库匹配。这几乎消除了错误配置 WAL 归档位置的可能性。

表空间与链接支持

完全支持表空间,并且在恢复时可以将表空间重映射到任何位置。还可以使用单个命令将所有表空间重映射到一个位置,这对于开发恢复非常有用。

支持 PostgreSQL 集群中任何文件或目录的文件和目录链接。在恢复时,可以将所有链接恢复到其原始位置,重映射部分或所有链接,或将部分或所有链接恢复为集群目录中的普通文件或目录。

S3、Azure 和 GCS 支持

pgBackRest 仓库可以位于 S3、Azure 和 GCS 兼容的对象存储中,以实现几乎无限的容量和保留期。

加密

pgBackRest 可以加密仓库,以保护备份无论存储在何处。

勒索软件与恶意软件防护

当仓库存储在带版本控制的对象存储上时,pgBackRest 可以读取某个时间点的仓库状态。如果备份因意外、恶意软件或勒索软件而被删除或损坏,可以使用目标时间来恢复损坏发生之前的数据。

S3、Azure 和 GCS 兼容的对象存储都支持版本控制。S3 的对象锁定以及 GCS 或 Azure 的软删除可以提供额外的防篡改保护。

兼容十个版本的 PostgreSQL

pgBackRest 支持十个版本的 PostgreSQL,即五个受支持的版本和最近五个 EOL 版本。这为升级到受支持版本提供了充足的时间。

快速开始

pgBackRest 力求易于配置和操作:

赞助商

没有赞助,pgBackRest 将无法存在:新功能、错误修复、贡献审查、社区支持和维护都需要大量时间。如果您在企业中使用 pgBackRest,请考虑赞助。

我们的赞助商:AWS、Supabase、pgEdge、Tiger Data、Percona、Eon、Xata、Dalibo、Data Egret。

我们感谢赞助商投资于惠及整个 PostgreSQL 社区的开源基础设施。

过去的赞助商:Crunchy Data、Resonate。

贡献

始终欢迎对 pgBackRest 的贡献!请参阅我们的贡献指南,了解如何贡献功能、改进或问题的详细信息。

支持

pgBackRest 完全免费且开源,采用 MIT 许可证。您可以将其用于个人或商业目的,没有任何限制。错误报告会受到非常严肃的对待,并将尽快处理。请在此处报告错误。

创建具有适当复制和备份策略的稳健灾难恢复策略可能是一项非常复杂且艰巨的任务。您可能会发现在架构阶段需要帮助,以及需要持续支持以确保您的企业继续平稳运行。

我们的赞助商提供的产品和服务包括 pgBackRest 支持,可以帮助满足您的灾难恢复需求。

分类