Databasus vs WAL-G

Databasus 和 WAL-G 都以最小化 RTO 和 RPO 的灾难恢复为目标,都支持 PostgreSQL 物理备份、WAL 归档和按时间点恢复(PITR)。Databasus 基于 PostgreSQL 17 的原生工具栈远程执行这些备份,复用 PostgreSQL 自带的、久经考验的工具而不是重新造轮子,这一切都在直观的 Web 界面里管理。它适用于任何规模和复杂度的数据库。物理备份要求 PostgreSQL 17 及以上版本;在更早的版本上只能使用逻辑 pg_dump 备份。WAL-G 是一个命令行工具,自带备份引擎,因此能在旧得多的 PostgreSQL 版本上做物理备份,使用自定义流式协议获得略优的性能,支持增量 delta 备份(只备份变化的页),并覆盖更多数据库引擎,包括 MS SQL、FoundationDB 和 Greenplum。

快速对比

下面是 Databasus 与 WAL-G 主要差异的速览:

功能DatabasusWAL-G
备份管理✅ 支持(多个数据库)❌ 不支持(仅单个数据库)
其他数据库支持✅ PostgreSQL、MySQL、MariaDB、MongoDB✅ PostgreSQL、MySQL、MS SQL
界面Web 界面仅命令行
备份类型逻辑 + 物理物理(WAL 归档)
物理备份所需 PostgreSQL 版本17+(原生)9.x+(自带引擎)
备份调度✅ 内置调度器需外部工具(cron)
恢复选项✅ PITR✅ PITR
增量备份✅ 块级(PG 17+)Delta 备份(只备份变化的页)
远程备份✅ 支持❌ 不支持(本地运行)
团队功能✅ 工作区、RBAC、审计日志❌ 仅操作系统级权限
通知✅ Slack、Teams、Telegram、邮件❌ 需要自写脚本
加密内置 AES-256-GCMGPG 或 libsodium
学习曲线很低要求熟练使用命令行
安装一行脚本或 Docker下载二进制文件 + 配置
适合自托管数据库✅ 适合✅ 适合
适合云数据库✅ 适合(RDS、Cloud SQL、Azure)❌ 只能备份(无法恢复到云端)

数据库定位

两款工具最显著的差异之一是覆盖的数据库范围:

Databasus:全面的备份管理

Databasus 面向多数据库系统的全面备份管理,并以易用性为核心:

  • 多数据库支持:在同一个界面里管理 PostgreSQL、MySQL、MariaDB 和 MongoDB 的数据库备份。
  • 统一体验:界面、工作流和功能在所有受支持的数据库上保持一致。
  • 版本支持:支持 PostgreSQL 12 到 18 的各个版本,并针对不同版本做了优化。
  • 专注管理体验:全部开发精力都投入到改进备份管理体验上。

WAL-G:多数据库支持

WAL-G 最初是 PostgreSQL 备份工具,后来扩展到支持多种数据库系统:

  • PostgreSQL:最早、最成熟的实现。
  • MySQL/MariaDB:支持基于 binlog 的备份。
  • MS SQL Server:Windows 上的 SQL Server 备份。
  • MongoDB:文档数据库备份支持。
  • FoundationDB:分布式数据库支持。
  • Greenplum:数据仓库备份支持。

当全面管理很重要时: 如果你需要通过统一界面管理多个数据库的备份,Databasus 提供了更顺畅的体验。你可以集中管理所有备份,还能使用团队功能,不必为不同数据库切换不同工具。

目标用户

基于各自的设计理念,两款工具服务于不同的用户群体:

Databasus 的用户

Databasus 面向广泛的用户群体,从个人开发者到大型企业:

  • 个人开发者:安装简单、界面直观,无需深入了解 PostgreSQL 也能保护个人项目。
  • 开发团队:工作区、基于角色的访问控制和审计日志让团队成员安全协作。
  • 企业:完善的安全机制、多种存储目标和通知渠道,可满足企业级需求。
  • 多数据库环境:同时运行 PostgreSQL、MySQL、MariaDB 或 MongoDB 的组织能从集中式备份管理中受益。
  • DBA 和灾难恢复:物理备份、WAL 归档和 PITR,为要求数据近零丢失的关键系统服务。
  • DevOps 工程师:Agent 模式可融入现有基础设施,Web 界面和 API 提供可见性和控制力,无需自写脚本。

WAL-G 的用户

WAL-G 面向习惯命令行工具的用户:

  • DevOps 工程师:偏好基础设施即代码和基于 CLI 的工作流的人。
  • 多数据库环境:同时运行 PostgreSQL 和 MySQL、MongoDB 或其他受支持数据库的组织。
  • 云原生部署:使用 Kubernetes 或容器化环境、CLI 工具容易集成的团队。
  • 扩展数据库支持:除了 PostgreSQL 还需要备份 MS SQL、FoundationDB 或 Greenplum 的团队。

备份方式

两款工具采用截然不同的备份策略,各有优势:

Databasus:逻辑 + 物理备份

Databasus 同时支持逻辑和物理两种备份策略:

  • 物理备份、增量备份和 WAL 备份:通过 PostgreSQL 复制协议远程执行,基于 PostgreSQL 17 的原生工具栈:pg_basebackup、由服务端 WAL 摘要驱动的块级 pg_basebackup --incrementalpg_receivewalpg_combinebackup。Databasus 复用 PostgreSQL 自带的、久经考验的工具,而不是重新造轮子。要求 PostgreSQL 17 及以上版本。
  • 逻辑备份:使用 pg_dump 生成可移植的备份,能恢复到不同的 PostgreSQL 版本。这也是 PostgreSQL 17 以下版本唯一可用的备份类型,以及 MySQL、MariaDB 和 MongoDB 的备份途径。
  • 数据库上无需安装任何东西:备份通过远程连接完成;封闭网络可以通过 SSH 隧道连接到内部主机或跳板机,数据库无需暴露到公网。
  • 高效压缩:两种备份类型都使用 zstd(级别 5),可将体积缩小 4-8 倍。
  • 只读访问:逻辑备份只需要 SELECT 权限,最大限度降低安全风险。

WAL-G:物理备份加 WAL 归档

WAL-G 执行文件级(物理)备份并持续归档 WAL:

  • 基础备份:对 PostgreSQL 数据目录做完整的文件级复制。
  • Delta 备份:只备份发生变化的页,减少存储占用和传输时间。
  • WAL 归档:持续归档预写日志(WAL),实现按时间点恢复。
  • 写时复制优化:高效处理未变化的数据块。

恢复选项

两款工具都提供恢复能力,但粒度不同:

Databasus 的恢复

  • 按时间点恢复:通过 WAL 回放恢复到任意指定的一秒。
  • 整集群恢复:从物理备份将整个数据库集群恢复到指定时间点。
  • 逻辑恢复:从定时逻辑备份恢复到任意一个备份点。
  • 一键恢复:直接在 Web 界面下载并恢复逻辑备份。
  • 跨版本兼容:逻辑备份可以恢复到不同的 PostgreSQL 版本。

WAL-G 的恢复

  • 按时间点恢复(PITR):通过 WAL 回放恢复到任意指定的一秒,最大限度减少数据丢失。
  • 整集群恢复:将整个数据库集群恢复到指定时间点。
  • Delta 恢复:只获取变化的页,恢复速度更快。
  • 创建备用节点:从备份创建 PostgreSQL 副本,用于高可用架构。

注意: 两款工具都支持 PITR。WAL-G 额外提供 delta 恢复(只获取变化的页),并使用自定义流式协议,在大规模场景下性能略优。 了解 Databasus 如何支持 PITR →

易用性

两款工具在用户体验上的取向差别很大:

Databasus 的使用体验

  • Web 界面:所有备份设置都可以点选配置,不需要命令行。
  • 2 分钟安装:一行 cURL 脚本或一条简单的 Docker 命令,立即上手。
  • 可视化监控:仪表盘一目了然地展示备份状态、健康检查和历史记录。
  • 内置通知:直接在界面里配置 Slack、Teams、Telegram、邮件或 webhook 告警。
  • 无需 PostgreSQL 专业知识:为想获得可靠备份、又不想成为数据库专家的开发者而设计。

WAL-G 的使用体验

  • 命令行界面:所有操作都通过终端命令完成,如 wal-g backup-pushwal-g backup-fetch
  • 环境变量:配置主要通过环境变量而不是配置文件。
  • 外部调度:自动备份需要 cron 任务或外部编排。
  • WAL 归档配置:必须配置 PostgreSQL 的 archive_command 才能与 WAL-G 集成。
  • 要求熟练使用 CLI:文档默认读者熟悉命令行工具和 shell 脚本。

查看 Databasus 安装指南 →

团队功能

对于由多名成员共同管理备份的组织:

Databasus 的团队能力

  • 工作区:按项目或团队组织数据库、通知渠道和存储。用户只能看到被邀请加入的工作区。
  • 基于角色的访问控制:分配查看者、编辑者或管理员权限,控制每位成员能做什么。
  • 审计日志:记录系统中的所有操作和变更,是安全合规与责任追溯的基础。
  • 共享通知:团队频道自动收到备份状态更新。

WAL-G 的团队能力

WAL-G 是命令行工具,没有内置团队功能:

  • 没有用户管理或访问控制
  • 没有操作审计日志
  • 团队协作需要借助外部工具和流程
  • 访问通过操作系统级权限和云 IAM 策略控制

进一步了解 Databasus 的访问管理 →

安全性

两款工具都提供安全功能,但思路不同:

Databasus 的安全性

  • AES-256-GCM 加密:所有密码、令牌和凭据都加密存储,加密密钥与数据库分开保存。
  • 每个备份独立加密:每个备份文件用主密钥、备份 ID 和随机盐派生的唯一密钥加密。
  • 只读数据库访问:只需 SELECT 权限,即使被攻破也不会破坏数据。

WAL-G 的安全性

  • GPG 加密:支持对备份文件做基于 GPG 的加密。
  • libsodium 加密:另一种基于 libsodium 库的加密方式。
  • 云 IAM 集成:利用云厂商的 IAM 控制对存储的访问。
  • 没有内置凭据管理:依赖环境变量或外部密钥管理。

进一步了解 Databasus 的安全性 →

存储选项

两款工具都支持云存储,但侧重点不同:

Databasus 的存储

面向各种使用场景的友好选项:

  • 本地存储
  • Amazon S3 及 S3 兼容服务
  • Google Drive
  • Cloudflare R2
  • Azure Blob Storage
  • NAS(网络附加存储)
  • Dropbox

WAL-G 的存储

云原生存储选项:

  • Amazon S3
  • Google Cloud Storage(GCS)
  • Azure Blob Storage
  • Swift(OpenStack)
  • 本地文件系统
  • SSH/SFTP

查看 Databasus 的所有存储选项 →

通知

随时掌握备份状态:

Databasus 的通知

内置多种通知渠道:

  • Slack
  • Discord
  • Telegram
  • Microsoft Teams
  • 邮件
  • Webhook

WAL-G 的通知

WAL-G 没有内置通知支持,实现通知需要:

  • 围绕备份命令自写脚本
  • 集成外部监控工具
  • 手动解析日志并配置告警
  • 接入 Prometheus、Grafana 等工具或自研方案

查看 Databasus 的所有通知渠道 →

压缩

两款工具都提供压缩来缩小备份体积:

Databasus 的压缩

  • zstd 压缩:使用 zstd 级别 5,在速度和压缩率之间取得平衡。
  • 体积缩小 4-8 倍:典型压缩率下运行时开销只增加约 20%。
  • 自动启用:压缩默认开启,无需任何配置。

WAL-G 的压缩

  • 多种算法:支持 LZ4、LZMA、Brotli 和 zstd。
  • 级别可调:可精细权衡压缩率与速度。
  • 按文件类型压缩:WAL 文件和基础备份可以使用不同的压缩设置。

结论

在 PostgreSQL 备份生态中,Databasus 和 WAL-G 满足的是不同的需求。如何选择取决于你的数据库环境、团队结构和运维偏好。

选择 Databasus,如果:

  • 你需要在同一个界面里全面管理 PostgreSQL 备份
  • 相比命令行工具,你更喜欢 Web 界面
  • 你需要团队协作功能(工作区、RBAC、审计日志)
  • 你想要内置的 Slack、Teams、Telegram 等通知
  • 你想要内置调度,不必额外配置 cron
  • 你想在一个带调度、通知和团队功能的仪表盘里管理多个数据库的备份
  • 你想快速上手,不需要太多数据库知识
  • 内置备份加密对你很重要
  • 你使用云托管数据库(AWS RDS、Google Cloud SQL、Azure)或自托管数据库

选择 WAL-G,如果:

  • 你需要在 PostgreSQL 17 以下版本上做物理或增量备份(WAL-G 自带备份引擎)
  • 你需要 delta 备份(只备份变化的页)来减少存储占用和传输时间
  • 你需要支持 MS SQL、FoundationDB 或 Greenplum
  • 你偏好命令行工具和基础设施即代码的工作流
  • 你想要多种压缩算法(LZ4、LZMA、Brotli、zstd)并做精细调优
  • 你的团队有管理 CLI 工具的 DevOps 经验

两款工具都支持物理备份、WAL 归档和 PITR,都以最小化 RTO 和 RPO 的灾难恢复为目标。Databasus 适用于任何规模和复杂度的数据库,并提供 Web 界面、团队功能,以及覆盖自托管和云托管数据库的逻辑与物理备份。

对于偏好 CLI 工作流的团队,WAL-G 仍然是出色的选择,它有独特的优势:delta 备份(只备份变化的页)、性能略优的自定义流式协议,以及对 PostgreSQL 之外更多数据库引擎的支持。