pg_probackup 2.3.0 已发布

发布于 2020-04-30,作者:Postgres Professional
相关开源

pg_probackup 是一个用于管理 PostgreSQL 数据库集群备份和恢复的实用程序。它旨在执行 PostgreSQL 实例的定期完整和增量页面级备份,使您能够在发生故障时恢复服务器。

自 pg_probackup 2.2.7 以来的重大变更

新功能

  • --status 选项可与 delete 命令一起使用,以删除所有具有指定状态的备份。由 Stepan Santalov 请求。由 Victor Spirin 贡献。
  • --no-sync 标志可与 backup、restore 和 archive-push 命令一起使用,以禁用将复制的文件同步到基础存储。
  • --note 选项允许在运行 backup 和 set-backup 命令时,向备份元数据添加大小最大为 1KB 的文本注释。由 Victor Spirin 贡献。
  • 现在支持多时间线增量链。增量备份的时间线编号可以与父时间线编号不同,但前提是可以使用 WAL 归档来确定子时间线是从父时间线派生的。
  • 现在您可以使用 -S | --primary-slot-name 和 --primary-conninfo 选项,在恢复期间设置 PostgreSQL 参数 primary_slot_name 和 primary_conninfo。由 Yuri Kurenkov 请求。
  • archive-push 命令的主要改进
  • 通过 -j | --threads 选项添加了多线程支持。
  • 通过 --batch-size 选项添加了批处理。
  • 在远程模式下,校验和现在在远程代理上计算。
  • archive-get 命令的主要改进
  • 通过 -j | --threads 选项添加了多线程支持。
  • 通过 --batch-size 选项添加了 WAL 预取。预取的 WAL 段的默认目录是 PGDATA/pg_wal/pbk_prefetch。您可以使用 --prefetch-dir 选项更改此位置。
  • 现在可以识别 pg_receivewal 程序生成的 WAL 部分文件,并在缺少相应的完整 WAL 段时使用它们。由 Artem Dolgih 报告。

错误修复

  • 启用的日志信息文件不应再破坏归档。由 Artem Dolgih 报告。
  • add-instance 命令在将远程 PostgreSQL 实例添加到备份目录时,不再隐式设置实例配置中的 --remote-proto 和 --remote-host 参数。
  • 在 ARCHIVE 模式下进行备份时,pg_probackup 现在会等待包含 START LSN 的段,而不是前一个段。由 Mikhail Kulagin 报告。
  • expire-time 属性现在在合并期间继承。
  • 现在在备份期间通过 PGOPTIONS 环境变量设置会话参数不会导致备份元信息损坏。

改进

  • 从增量链恢复的速度大大提高。在某些情况下,速度提高了一个数量级。由 Alex Ignatov 报告和测试。
  • 合并的速度,尤其是同时合并多个备份的速度大大提高。由 Rostislav Pochevalov 报告。
  • 在 PAGE 和 PTRACK 模式下的远程备份速度大大提高。
  • 现在,即使设备上没有剩余空间,您也可以删除备份。由 Stepan Santalov 报告。
  • 现在,在备份期间会忽略隐藏文件。
  • 现在明确禁止使用较旧的 pg_probackup 版本恢复备份。由 Dmitriy Kuzmin 贡献。

链接 & 致谢

pg_probackup 是由 Postgres Professional 在 Postgres 许可证下开发的开源工具。主要贡献者是 Artur Zakirov、Grigory Smolkin、Aleksey Kondratov 和 Anastasia Lubennikova。pg_probackup 可以从 https://github.com/postgrespro/pg_probackup 下载。