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

pgBackRest 1.09 发布

发布于 2016-11-01,作者 Crunchy Data

2016年11月1日:Crunchy Data 自豪地宣布 pgBackRest 1.09 正式发布,这是可靠的 PostgreSQL 备份与恢复工具。

1.09 版本

自 1.0 版本以来,我们改进了可伸缩性,增加了从备用服务器备份、选择性恢复,并支持 9.6 的非独占备份方法。自 1.0 版本以来的所有主要新功能将在下面详细介绍。

链接

新功能

改进的多进程可伸缩性

将 Perl 线程转换为子进程,以提高兼容性并大大增加可伸缩性。使用 32 个核心和 10GbE,可以实现每小时 3TB 的备份速度,包括压缩和校验和。

从备用集群备份

在备用主机上执行备份可以大大减轻主机的 CPU 和 IO 负载。pgBackRest 会从备用服务器复制大部分文件,只从主服务器复制少量文件,但仍然生成与完全在主服务器上执行的备份完全相同的备份。

选择性恢复

可以从集群备份中恢复选定的数据库,以节省空间,当并非所有数据库都需要时。在恢复期间,所有数据库都会进行 WAL 重放,因此会占用一些空间,但通常远少于如果未恢复的数据库被完全恢复的话。恢复完成后,未恢复的数据库将无法访问,但可以按常规方式删除。

非独占备份

支持 PostgreSQL 9.6 中的非独占备份。

目录/文件排除

在备份时排除 PostgreSQL 在启动时清理、重新创建或清零的目录。这些目录包括 pgsql_tmp 和 pg_stat_tmp。现在还将排除 postgresql.auto.conf.tmp 文件,除了已排除的文件:backup_label.old, postmaster.opts, postmaster.pid, recovery.conf, recovery.done。

排除 $PGDATA/pg_replslot 目录的内容,以免主服务器上的复制槽成为备份的一部分。

增强的 Info 命令

增强了 Info 命令的文本输出,使其包含所有备份的时间戳、大小和引用列表。

Check 命令

添加了 Check 命令,以验证 pgBackRest 是否正确配置了归档和备份。

灵活的配置

为数据库提供了更灵活的配置。主服务器和备用服务器都可以配置在备份服务器上,pgBackRest 会自动确定哪个是主服务器。这意味着在主备切换后,如果使用单独的备份服务器,则无需更改备份配置。

关于

pgBackRest 旨在成为一个简单、可靠的备份和恢复系统,可以无缝地扩展到最大的数据库和工作负载。pgBackRest 不依赖于 tar 和 rsync 等传统备份工具,而是内部实现所有备份功能,并使用自定义协议与远程系统进行通信。去除对 tar 和 rsync 的依赖,可以更好地解决数据库特定的备份挑战。自定义远程协议提供了更大的灵活性,并限制了执行备份所需的连接类型,从而提高了安全性。

Crunchy Data 支持 pgBackRest 作为完全开源项目进行持续和积极的开发,该项目已根据与 BSD 兼容的 MIT 许可证发布。