数据库 CI/CD 再升级:CloudDM 4.1.0 支持多数据库发布流编排

一次新版本发布,从开发环境走到生产环境,通常需要经历开发、测试、预发布、生产等等多个阶段。当数据库变更越来越多,除了自动检查和执行 SQL,环境一多,问题也随之而来:

  • SQL 是否会在传递过程中被改动?
  • SQL 变更哪个环境执行过了?
  • 多个项目发布流程该如何统一管理?

针对这些问题,CloudDM 新版本推出了数据库 CI/CD 「发布流编排」功能,同时也支持了 GitLab 作为发布源。

什么是发布流编排?

从流程上看,一次数据库变更无非是从开发环境逐步走向生产环境,流程似乎并不复杂,但在实际执行过程中,往往会受到以下问题的影响:

  • 流程复杂:多环境、多环节协同,发布进度难以统一管理。
  • 权限混乱:发起、审批和执行边界不清,责任难以落实。
  • SQL 变更管理不规范:依赖人工传递,容易出现版本不一致且难以追溯。

发布流编排,是将原本相互独立的数据库发布流程,按照真实的交付顺序组织成一条完整链路。

使用 CloudDM 发布流编排功能,根据实际发布顺序组成多级拓扑,每个发布流节点均可独立配置负责人、审核规则和执行方式。上游变更执行成功后,SQL 将自动传递至下游,无需人工重复提交,实现发布流程、权限和 SQL 变更的统一管理。

SQL 工单全流程追踪

CloudDM 4.1.0 优化了 SQL 工单,可以查看 SQL 识别、行为分析、安全规则检查和执行阶段的进度、统计、日志及失败原因。

在工单详情中可以看到:创建 → 分析 → 审批 → 确认 → 执行。每个步骤都会显示相应的状态、处理时间和处理人。

进入「分析」步骤后,还可以继续查看 SQL 的行为、规则和数据分析结果。例如,可以看到本次变更包含多少条 SQL、涉及多少个数据库对象、产生了多少次操作。安全规则检查结果、各项处理耗时和失败信息也会直接显示在页面中。

当数据库变更进入执行阶段后,还可以查看具体 SQL 的执行状态和相关日志。

当一项数据库变更出现异常时,可以先确定问题发生在哪个步骤,再结合分析结果、规则检查、错误信息和执行日志继续排查,定位后可直接在详情页对失败节点发起重试。

支持直接上传 SQL 文件

除了通过代码仓库获取 SQL 变更,CloudDM CI/CD 也支持手动提交 SQL。需要发布数据库变更时,可以直接在编辑器中输入 SQL,也可以选择直接上传 .sql 文件导入,再触发对应的数据库变更。

支持私有化 GitLab

CloudDM 4.1.0 新增了对私有化 GitLab 的支持。企业内部部署的 GitLab 可以直接作为 CI/CD 发布源,目前支持 HTTP / HTTPS、非标准端口、子路径部署,以及 Push、Merge Request Webhook。

创建发布流时,可以选择 GitLab 作为变更源,并配置代码仓库、目标分支和脚本路径,同时指定需要发布的数据库、实例和 Schema。

快速体验

CloudDM 是一款开源数据库管理平台,采用 Apache 2.0 协议。你可以自行部署、修改和二次开发,也可以将其部署到自己的生产环境中。CloudDM 支持单机、集群、Docker、Kubernetes 等多种部署方式。使用 Docker 可以直接启动:

国内镜像

bash 复制代码
docker run -d --name cgdm-alone \
  --restart always \
  -p 8222:8222 \
  -v cgdm_alone_conf:/root/cgdm/alone/conf \
  -v cgdm_alone_logs:/root/cgdm/alone/logs \
  -v cgdm_alone_data:/root/cgdm/alone/data \
  -v cgdm_alone_mysql_data:/var/lib/mysql \
  cloudcanal-registry.cn-shanghai.cr.aliyuncs.com/clougence/cgdm-alone:latest

海外镜像

bash 复制代码
docker run -d --name cgdm-alone \
  --restart always \
  -p 8222:8222 \
  -v cgdm_alone_conf:/root/cgdm/alone/conf \
  -v cgdm_alone_logs:/root/cgdm/alone/logs \
  -v cgdm_alone_data:/root/cgdm/alone/data \
  -v cgdm_alone_mysql_data:/var/lib/mysql \
  bladepipe/cgdm-alone:latest

启动完成后,浏览器访问:http://localhost:8222

更多信息:

如果 CloudDM 对你有帮助,欢迎到 GitHub 或 Gitee 为项目点一个 Star,我们将会非常感激。也欢迎使用之后把反馈告诉我们。

相关推荐
SelectDB17 分钟前
为什么越来越多分析数据库开始重视实时更新,而不仅仅是查询性能?
大数据·数据库·数据分析
SelectDB20 分钟前
为什么今天值得重新比较 Apache Doris 和 StarRocks?
大数据·数据库·数据分析
l12586521 分钟前
# LangGraph Deep Research Agent 全流程设计:多轮研究、人机协同与真实来源管理
数据库·人工智能·python·算法·自然语言处理·oracle·langchain
Frank_refuel21 分钟前
MYSQL【进阶】 -> 索引(了解)
数据库·mysql
SelectDB28 分钟前
开源!Apache Doris 上线 Profile 可视化诊断:基于 Doris Skills 破解 AI 误诊难题
数据库·agent·自动化运维
DBA_G28 分钟前
南大通用GBase 8s数据库的“一库三模“
数据库
阿里云大数据AI技术34 分钟前
一套 Spark SQL,打通多种 Catalog:EMR Serverless Spark 统一数据处理实践
人工智能·sql·spark
l1t1 小时前
DeepSeek总结的DuckDB 如何更快地运行递归 CTE
java·开发语言·数据库·mysql·duckdb
Baron X2 小时前
Redis 7.0.9 完整部署指南
数据库·redis