内容提要
pg_hardstorage 是用于自建 PostgreSQL 物理备份的开源项目,支持去重、加密和 PITR,采用 Apache 2.0 许可,要求 PG 15+。文档存在矛盾:一处称 RDS、Aurora、Cloud SQL、Azure、Neon、Supabase 等托管服务不开放 BASE_BACKUP 而无法使用,另一处却称支持托管 PG。官网超时,子域名可访问。
延伸解读
文档矛盾:托管数据库支持性存疑
文章指出 pg_hardstorage 的文档存在明显矛盾:一处说明托管数据库服务(如 RDS、Aurora、Cloud SQL、Azure Database、Neon 和 Supabase)不向客户开放 BASE_BACKUP 复制命令,因此无法对其执行物理基础备份;另一处却声称该工具对托管 PostgreSQL 与裸金属一样有效。这种不一致会让读者难以判断实际支持范围,需以官方最新说明为准。
官网访问异常,子域名可用
文章提到 pghardstorage.org 主站当前返回“Connection timed out Error code 522”,无法正常访问,但子域名 get.pghardstorage.org 仍可正常服务。这意味着读者若想获取项目信息或下载资源,可能需要直接使用子域名,而非依赖主站。
与自制脚本方案的架构对比
一位评论者分享了自己十年前用 shell 脚本实现的类似方案,区别在于:初始基础备份后,他使用本地副本应用 WAL 并在副本上定期快照,从而避免对上游数据库造成每日基础备份负载。这提示 pg_hardstorage 的架构可能同样关注减少对生产库的影响,但具体实现差异需进一步了解。
Q&A
pg_hardstorage 是什么?
pg_hardstorage 是一个社区驱动的开源项目,用于自建 PostgreSQL 的物理备份,支持去重、加密和 PITR,采用 Apache 2.0 许可,要求 PostgreSQL 15 及以上版本。
pg_hardstorage 支持哪些 PostgreSQL 部署环境?
文档存在矛盾:一处说明托管 DBaaS(如 Amazon RDS、Aurora、Cloud SQL、Azure Database、Neon、Supabase)不开放 BASE_BACKUP 复制命令,因此无法使用;另一处则称支持托管 PG(RDS、Cloud SQL、Azure DB)以及裸金属部署。
pg_hardstorage 的备份和恢复机制是怎样的?
它通过内容寻址块进行去重和加密,并支持基于时间点恢复(PITR)。
pg_hardstorage 的官方网站可以访问吗?
pghardstorage.org 主域名目前返回“Connection timed out Error code 522”,但子域名 get.pghardstorage.org 可以正常访问。
pg_hardstorage 的许可和版本要求是什么?
采用 Apache 2.0 许可,要求 PostgreSQL 15 或更高版本。
pg_hardstorage 与传统的基于本地副本的备份方案有何不同?
文章提到一种传统方案是在初始基础备份后,使用本地副本应用 WAL 并定期快照,从而避免对上游数据库的每日基础备份负载;而 pg_hardstorage 直接对上游数据库进行物理基础备份,但支持去重和加密。