应用发布早已进入 CI/CD,但数据库变更这一步,很多团队依然离不开人工。
开发提交 SQL 后,要检查风险、走审批,到了发布时间还要切换环境、逐库执行。应用已经可以自动构建、测试和发布,数据库却常常还卡在流程之外。
因此,越来越多团队开始把数据库变更也纳入 CI/CD,让 SQL 从提交开始,就按照固定流程完成检查、审批、执行和追踪。
真正围绕数据库发布流程提供完整 CI/CD 能力的工具并不算多。本文挑了 4 款比较有代表性的产品,看看它们分别适合什么场景。
数据库 CI/CD 是什么?
在盘点工具之前,先简单介绍一下数据库 CI/CD。
CI/CD 是持续集成(Continuous Integration)与持续交付/持续部署(Continuous Delivery/Deployment)的合称。简单来说,CI 更关注变更提交之后的自动检查和验证,尽早发现问题;CD 则负责把已经通过验证的变更,按流程发布到开发、测试、生产等环境。两者合在一起,把原本需要手动完成的发布过程,变成了自动化、可追溯的流程。
数据库的 CI/CD,就是把这套思路用到数据库上,把表结构、索引、存储过程这些数据库变更,像代码一样纳入版本控制,放进流水线里自动执行、自动验证、留痕审计。
对团队来说,它带来的好处包括:
- 减少手工整理 SQL、登录数据库和逐环境执行的工作;
- 在正式执行之前发现危险 SQL、结构冲突等问题;
- 保留数据库变更历史,方便追踪和审计;
- 降低多环境发布中的漏执行、顺序错误等问题;
- 让数据库变更和应用发布更容易保持同步。
下面就来看看几款比较有代表性的数据库 CI/CD 工具。
CloudDM:全面开源,完整承接数据库发布流程
CloudDM 是一款开源的团队数据库管理工具,本身覆盖 SQL 审核、工单审批、操作审计、数据脱敏等数据库管控能力,同时提供数据库 CI/CD 功能。
CloudDM 的 CI/CD 从代码仓库里的 SQL 开始。触发变更后,CloudDM 会获取代码仓库中的 SQL,并与已有快照进行比较,识别本次新增的变更,再依次进入 SQL 审核、工单审批和数据库执行。
整个过程大致可以概括为:
代码仓库 → 识别增量 SQL → SQL 审核 → 审批 → 数据库执行 → 回调后续 CI/CD

在 CI/CD 方面,它比较有代表性的能力包括:
- 支持上传 SQL 文件:除了从代码仓库获取变更,也可以直接上传 SQL 文件发起数据库发布
- 支持单一发布流和发布流编排:既可以发布到一个目标数据库,也可以按顺序发布到多个下游数据库
- 图形化配置发布流:通过界面组织数据库发布流程,不需要手写大量 CI/CD 编排脚本
- 审核、审批和执行全流程覆盖:Git Push、WebHook、HttpCall 都能拉起变更流水线,可对接 Gitee、GitLab,提交 SQL 后可以继续完成审核、工单审批和数据库执行
- 支持多种数据库:覆盖 MySQL、Oracle、PostgreSQL、TiDB、OceanBase、GaussDB、达梦等多种数据库;
价格 :CloudDM 目前已经全面开源,官方提供 GitHub 和 Gitee 源码。数据库 CI/CD、工单流程、SQL 规范、数据脱敏等所有能力均可使用,无任何限制。商业版则提供企业级支持和 SLA。
适合谁:如果你需要一个一站式平台,既要 CI/CD 自动化,又需要审批、审计、脱敏这些安全能力,还不希望被商业闭源锁死,CloudDM 是值得优先尝试的平台。
Liquibase:把数据库变更接入现有 CI/CD 流程
Liquibase 是一款数据库变更管理工具,主要用于记录、管理和执行数据库结构及数据变更。它可以接入 Jenkins、GitLab CI、GitHub Actions、Azure DevOps 等现有 CI/CD 流程,让数据库变更和应用代码一样进入自动化发布链路。
Liquibase 的核心做法,是通过变更日志管理每一次数据库修改。开发人员提交变更后,CI/CD 流程可以自动调用 Liquibase,检查哪些变更还没有执行,再按顺序应用到目标数据库。
Liquibase 社区版可以用于基础数据库 CI/CD,适合把数据库版本管理和自动执行接入现有流水线。商业版包含了更多企业级能力,例如数据库变更影响评估、审计报表和更完善的权限控制,更适合对发布流程、合规审计和多环境一致性要求较高的企业团队。
价格:社区版可以免费使用,商业版本按照不同方案收费,企业级方案需要结合实际规模和功能需求确定。
适合谁:已经有成熟的 Jenkins、GitLab CI 等发布流程,希望用一套标准化方式管理数据库变更,并把数据库发布稳定接入现有 CI/CD 的团队。

Harness Database DevOps:数据库和应用统一编排
Harness Database DevOps 是 Harness 面向数据库发布和变更管理推出的 Database DevOps 产品,主要用于把数据库变更纳入企业现有的 CI/CD 流程。
它最大的特点是数据库与应用发布统一编排,把数据库变更作为软件交付流程中的一个标准步骤,直接编排进 Harness Pipeline。开发人员提交 Schema 或 SQL 变更后,可以按照开发、测试、预生产、生产等环境逐步推进,并在每个阶段加入审批、策略检查和执行控制。
数据库发布不再作为一个独立环节单独处理,而是整个软件交付过程中的一个步骤。
价格:Database DevOps 包含在 Harness 的 DevOps Essentials 等方案中,官方目前没有给出单独的固定公开价格,需要联系销售。
适合谁:已经有成熟 DevOps 体系,特别是正在使用 Harness,希望把数据库、应用和其他交付环节放进同一套发布流程的大中型团队。

DBmaestro:更强调发布安全与环境一致性
DBmaestro 是比较典型的企业级 Database DevOps 产品,重点放在数据库发布自动化、发布治理和合规上。
它可以把数据库变更纳入标准化发布流程,帮助团队管理从开发、测试到生产环境的数据库发布,并减少不同环境之间因为人工操作造成的偏差。
除了数据库自动发布,它还提供发布前验证、Drift Detection、Source Control、权限控制和审计等能力。团队可以在发布前检查数据库状态和变更内容,识别目标环境与预期版本之间的差异。发布完成后,也可以通过审计记录追踪谁在什么时间提交了什么变更、经过了哪些审批,以及最终执行结果如何。
价格:DBmaestro 没有公开固定价格,主要按照发布流程中的数据库或 Schema 环境连接数量授权,需要联系销售获取报价。
适合谁:生产数据库数量多、发布流程复杂,并且对环境一致性、审计和合规要求较高的大型企业。

4 款数据库 CI/CD 工具怎么选?
| 工具 | 核心能力 | 发布方式 | 开源情况 | 适合场景 |
|---|---|---|---|---|
| CloudDM | 增量 SQL 识别、审核、审批、执行一体化 | 可独立承接数据库发布,并衔接现有 CI/CD | 全面开源 | 已有应用 CI/CD,希望低成本将数据库发布纳入 CI/CD |
| Liquibase | 数据库变更版本管理、自动执行、多环境推进 | 社区版免费,商业版按方案收费 | 社区版免费、源码可用,另有商业版 | 已有成熟 CI/CD,希望标准化管理数据库变更 |
| Harness Database DevOps | 数据库与应用统一编排 | 数据库和应用可在同一发布流程中执行 | 商业产品 | 已有成熟企业级研发发布体系的团队 |
| DBmaestro | 发布前验证、环境漂移检测、发布治理 | 企业级数据库发布流程 | 商业产品 | 强调发布安全、审计和合规的大型企业 |
如果团队还在人工整理、审核、审批并逐库执行 SQL,CloudDM 更适合作为第一选择。它覆盖数据库发布全流程,支持接入现有 CI/CD,且完全开源,适合需要私有化部署或控制成本的团队。
如果已有成熟的发布流程,只想管理数据库变更版本并自动发布到不同环境,可以考虑 Liquibase。
Harness 更适合已有大型 CI/CD 体系的企业,而 DBmaestro 则更侧重发布治理、合规与审计。
结尾
数据库 CI/CD 把数据库变更从提交、审核、审批到执行和记录串成一套更稳定的流程。
几款工具都能完成数据库发布,但解决问题的侧重点不同。有的更适合基于 Git 管理变更,有的更强调数据库和应用统一发布,也有的更偏大型企业的发布治理。
选型时,可以结合现有流程来判断。如果已经有应用 CI/CD,同时比较看重开源、私有化和多数据库支持,可以优先看看 CloudDM。所有功能开箱即用,使用门槛较低,可以更快实现数据库 CI/CD。