全部产品
云市场

可编程对象

更新时间:2020-06-19 15:18:42

DMS支持变更存储程序(Stored Routines),并且提供了规范化的管理流程来管控变更操作历史记录,本文介绍如何完成存储程序变更。

前提条件

数据库为MySQL。

后续会陆续增加更多数据库引擎。

注意事项

目前仅支持变更函数(Stored Function)和存储过程(Stored Procedure)。

操作步骤

  1. 登录DMS控制台

  2. 在上方菜单栏选择数据方案 > 数据变更 > 可编程对象

  3. 参考下表填写数据变更工单申请,并单击提交申请

    参数名 说明
    原因类别(必填) 选择数据变更的原因,方便后续查找。
    业务背景(必填) 详细描述变更原因或目标,减少沟通成本。
    变更相关人(选填) 设置的相关人员都可查看工单,并协同工作,非相关人员则不能查看工单(管理员、DBA除外)。
    执行方式(必填) 默认为审批通过后,提交者执行,可选审批通过后,自动执行最后审批人执行
    数据库(必填) 选择有变更权限的数据库。若您只有目标数据库的只读权限或只有表的变更权限时则无法提交。
    影响行数(必填) 预估本次更新会影响的数据行数,可在SQLConsolecount统计。
    变更SQL(必填) 必须是可直接执行的SQL语句,产品在提交时会自动校验语法正确性,不正确则阻断无法提交。
    回滚SQL(选填) 可直接执行的SQL语句,变更脚本对应的逆向脚本。

    申请工单

  4. 工单提交后,系统会进行内容合法性检查。

    若校验不通过则可按需申请权限、修改脚本等方式后重新检测直至校验通过。

  5. 当检查通过时,需要您提交审批,审批通过后,就会生成执行任务。

    • 在提交审批前,您可以修改工单内容和定时配置,一旦提交审批后,您将不能修改相关信息。
    • 目前,数据变更的默认安全审批规则为:数据库对应的DBA进行审批。更多关于数据变更的审批规则请参见SQL变更安全规则
  6. 单击执行变更,开启立即执行按钮或指定特定时间执行,单击确定执行执行变更

    在创建工单时,执行方式若选择审批通过后,自动执行,会自动跳过此步骤。

  7. 任务调度。

    立即执行的任务会进行即刻调度,定时执行的任务会在指定时间点再进行调度。

  8. 执行成功后可通过单击详情按钮,查看执行日志详细,包括执行语句、执行所用时间、调度详情等信息。

    注:

    • 存储过程包体内容的业务逻辑需要使用者进行保障,DMS模块只进行存储过程关键要素的检测(不探测包体逻辑)。
    • 存储过程的执行不支持事务指定、不支持变更前镜像的备份处理。