小编Anu*_*ama的帖子

为 PITR 备份大型 postgres 数据库

我有一个 postgres 9.1 主服务器和 2 个从服务器,设置了带有 WAL 存档的流式复制。

现在,我正在尝试为 PITR 设置至少 1 周的窗口期。这是为了弥补任何管理错误(例如错误地删除重要的表)。这是我对 PITR 的理解

  • 我们需要在已知时间点对数据库进行基本备份。
  • 我们需要一个从基础备份到出错点的 WAL 存档。

使用上面的 2 个方法,我们可以将数据库重建到中间的任何点。

涉及的数据库很大,大约1TB,每周增长30GB

我想了解在运行实例上实现快速基础备份创建和低性能开销的最佳方法是什么。我可以想到以下替代方案,但不确定

  • 如果每个都有优点和缺点
  • 如果有其他更好的选择

    1. 是每周进行一次基本备份并累积 WAL 直到下一次基本备份还是只进行一次基本备份(比如现在)并每周只备份 WAL 更好。

    2. 如果我们每周都进行基础备份,那么使用 pg_basebackup 或 pg_start_backup + rsync + pg_stop_backup 更好。如果我由于 rsync 而每周使用相同的目标磁盘/卷/文件夹,第二个选项会明显更快吗?

    3. 是否最好对主服务器运行基本备份,或者是否可以在暂时停止其中一个从服务器并在快照后恢复复制后拍摄 postgres 集群的磁盘快照。如果我想要执行 PITR,此快照是否可用于在恢复模式下设置实例,或者是否会出现任何数据一致性或时间线问题?

感谢您的任何见解。

postgresql replication

3
推荐指数
1
解决办法
4438
查看次数

标签 统计

postgresql ×1

replication ×1