【问题标题】:Point-In-time-recovery in Greenplum DatabaseGreenplum 数据库中的时间点恢复
【发布时间】:2020-06-01 16:41:55
【问题描述】:

我们最近设置了 greenplum。现在主要关注的是为 PITR 设置策略。 Postgres 提供了 PITR 功能,但我对它在 greenplum 中如何工作感到有些困惑,因为每个段都有自己的日志目录和配置文件

【问题讨论】:

  • Greenplum 没有 PITR。如果有段故障,则镜像进程将接管提供 HA。如果要恢复删除的对象,可以从上次备份中恢复它。请记住,Greenplum 专为分析和数据仓库而设计。
  • 我们将历史/存档数据保存在 greenplum 中,因此如果任何所需的段损坏并且可能需要恢复到某个时间点,则存在风险
  • 这就是 Greenplum 有镜像的原因,也是您安排例行备份的原因。

标签: database-administration greenplum pitr


【解决方案1】:

我们最近引入了命名还原点的概念,作为 PITR for greenplum 的构建块。为了使用它,您需要使用目录函数 gp_create_restore_point() 在内部创建跨所有段的集群范围的一致性点。该函数返回每个段和主节点的所有还原点位置()。使用这些恢复点,您将能够在 PITR 集群中配置 recover.conf

为了演示 Greenplum 命名还原点的工作原理,一个新的测试 已添加目录 src/test/gpdb_pitr。测试展示 WAL 归档与命名的还原点一起做 时间点恢复。

如果您对细节最感兴趣,请参考以下两个提交,详细讨论此功能https://github.com/greenplum-db/gpdb/commit/47896cc89b4935199aa7d97043f2b7572a71042b

https://github.com/greenplum-db/gpdb/commit/40e0fd9ce6c7da3921f0b12e55118320204f0f6d

【讨论】:

  • 你们有没有做过任何可以作为这个实用程序的POC的教程?
猜你喜欢
  • 1970-01-01
  • 2021-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多