跳到主要内容

变更流

变更流用于统一管理数据库变更的来源、目标数据库、处理阶段、执行策略和通知方式。每个变更流包含其自身的变更记录。

CloudDM 数据库 CI/CD 可以包含以下阶段:

  • CI/CD 触发:由 Git 服务、远程请求或控制台触发数据库变更,并可在完成后回调外部 CI/CD 系统。
  • SQL 审核:按照目标数据库关联的安全规范检查增量 SQL。
  • 工单审批:根据需要使用目标数据库关联的变更工单流程进行审批。
  • 执行 SQL:执行配置支持自动、手动或禁用;选择手动时,可以在执行阶段选择已手动完成、立即执行或定时执行。

创建变更流

  1. 登录 CloudDM 控制台。
  2. 点击左侧 CI/CD,进入变更流列表。
  3. 点击 新建变更流
  4. 基本信息 中填写变更流名称、描述和负责人。
  5. 变更流配置 中完成以下配置:
    • 变更来源:选择变更来源类型、Git Ops、仓库和目标分支;按需填写脚本路径,并选择 Push 或 Pull Request 触发方式。
    • 目标数据库:选择数据库类型、实例、数据库或 Catalog(如适用)及 Schema。
    • 初始化方式:选择建立基线快照、生成初始化变更或跳过初始化。
  6. 点击 下一步,配置通知渠道、IM 服务、订阅消息和执行策略。
  7. 点击 完成 创建变更流。
信息
  • 脚本路径:从仓库根目录开始计算。留空时匹配仓库中的全部 .sql 文件。
  • 目标分支:该分支出现 SQL 变化时,CloudDM 可以识别并生成增量变更。
  • 初始化方式
    • 建立基线快照:创建变更流后构建当前 SQL 脚本的基线快照。
    • 生成初始化变更:创建变更流后立即生成一次初始化变更。
    • 跳过初始化:仅创建变更流,不执行初始化操作。

执行配置

新建变更流的第二步或变更流详情页的 执行配置 中,可以设置以下内容:

  • SQL 检查:选择始终、提示或阻塞,决定何时需要人工确认 SQL 审核结果。
  • 工单审批:启用或禁用目标数据库关联的变更工单流程。
  • 变更执行:选择自动、手动或禁用。
  • 事务模式:自动执行时可按需启用事务。
  • 错误策略:自动执行时选择中断、重试或忽略。

在详情页修改时,进入 配置项 > 执行配置,点击 查看配置,调整后点击 保存

信息

目标数据库所在环境启用安全规范后,数据库 CI/CD 会使用该规范检查变更中的 SQL。详情请参考启用规范

触发变更

CloudDM 支持三种方式触发变更。触发后会执行以下操作:

  1. 下载目标分支的最新代码。
  2. 扫描变更流指定脚本路径中的 .sql 文件。
  3. 将扫描结果与变更流的已有快照对比,识别新增内容。
  4. 存在增量 SQL 时,依次进入 SQL 审核工单审批执行 阶段。

构建快照

进入变更流详情页,点击 构建快照,在确认框中点击 确定,可以更新基线快照。CloudDM 会下载目标分支、扫描指定脚本路径,并将当前 SQL 内容保存为最新快照。后续变更以该快照为对比基础。

通知配置

新建变更流时,可以在第二步的 通知配置 中选择通知渠道、已添加的 IM 服务和需要订阅的消息。

创建后如需修改,进入变更流详情页,在 配置项 > IM消息 中点击 查看配置,修改后点击 保存

启用和禁用

在变更流列表中,可以启用或禁用变更流。

  • 禁用后不会再响应新的自动触发请求。
  • 新建或重新启用时,CloudDM 会检查源端仓库与目标数据库组合是否与其他已启用变更流重复。

归档和删除

  • 归档:归档后的变更流停止处理新的变更,可以通过 恢复 重新启用管理操作。
  • 删除:只有已归档的变更流可以删除。删除后历史数据无法恢复。

集成配置

  • 触发配置:在变更流详情页的 配置项 > 触发配置 中点击 查看配置,配置 WebHook 或远程触发。Git 服务配置示例请参考配置 Gitee
  • 回调配置:在 配置项 > 回调配置 中点击 查看配置,数据库变更完成后通过回调通知外部 CI/CD 系统继续执行。
联系我们
微信二维码

扫码添加微信,获取技术支持