库表同步支持结构同步、影子表同步、空库初始化、表一致性修复功能,安全规则可以分别对这三个功能进行控制。

基础配置项

在库表同步的基础配置项中,您可以配置默认审批模板、开启执行能力、设置分析阶段脚本过期时间。
  • 开启执行能力:若关闭此项,库表同步将丧失SQL执行能力,仅能对比表结构差异。其他配置项和检测点的安全规则均会失效。
  • 库表同步默认审批模板:您可以直接使用默认值,也可以通过切换审批模板来更改默认审批模板的审批流程。具体操作,请参见修改默认审批模板
  • 分析阶段脚本过期时间(单位:小时):合理设置过期时间可以避免执行任务之前目标库表结构变化带来的风险。

检测点

库表同步有4个检测点,分别对应了库表同步中的4个功能,每个检测点之间没有关联关系。例如:当您提交一个结构同步工单时,只有基础配置项结构同步校验检查点会起作用。
  • 结构同步校验:对结构同步工单做相应的限制或设置审批流程。
  • 影子表同步校验:对影子表同步工单做相应的限制或设置审批流程。
  • 空库初始化校验:对空库初始化工单做相应的限制或设置审批流程。
  • 表一致性修复校验:对表一致性修复工单做相应的限制或设置审批流程。

您可以在每个检测点中使用安全规则模板库中提供的规则,也可以自定义新增规则。具体操作,请参见新增规则

因子和动作

因子

因子是系统内置变量,可用来获取安全规则校验的上下文信息,如获取SQL类型、影响行数等。因子全部以@fac.开头,后接因子名称。每个模块的不同检测点均提供不同因子,库表同步中提供因子的说明请参见下表:
因子名 说明
@fac.env_type 环境类型,值为环境标识,如DEVPRODUCT。更多环境类型请参见实例环境说明
@fac.schema_name Schema名称。

动作

动作是满足IF条件之后系统执行的行为,比如:禁止提交工单、选择工作流、允许执行、拒绝执行等,这些动作表达了安全规则的主要目的。动作全部以@act.开头,后接动作名称。每个模块的不同检测点均提供不同动作,库表同步中提供动作的说明请参见下表:
动作名 说明
@act.forbid_submit_order 禁止提交工单。用法:@act.forbid_submit_order '禁止提交的原因'
@act.do_not_approve 指定审批模板ID。详情请参见设置审批流程
@act.choose_approve_template
@act.choose_approve_template_with_reason

模板库

安全规则提供了大量的规则模板可直接选择启用,也可以在模板基础上按照实际需求自行调整启用。库表同步中的模板如下所示:
检测点 模板
结构同步校验 「结构同步」设置测试库同步免批
「结构同步」关闭SQL执行能力
「结构同步」关闭线上库的SQL执行能力
「结构同步」设置线上库同步的审批流程
影子表同步校验 「影子表同步」设置测试库同步免批
「影子表同步」关闭SQL执行能力
「影子表同步」关闭线上库的SQL执行能力
「影子表同步」设置线上库同步的审批流程
空库初始化校验 「空库初始化」设置测试库同步免批
「空库初始化」关闭SQL执行能力
「空库初始化」关闭线上库的SQL执行能力
「空库初始化」设置线上库同步的审批流程
表一致性修复校验 「表一致性修复」设置测试库同步免批
「表一致性修复」关闭SQL执行能力
「表一致性修复」关闭线上库的SQL执行能力
「表一致性修复」设置线上库同步的审批流程

开启执行能力

您需要在基础配置项中打开开启执行能力开关,若未开启,库表同步仅能对比表结构差异,无SQL执行能力。

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择安全与规范 > 安全规则
  3. 安全规则页签中,单击目标规则集右侧操作列中的编辑
  4. 详情页面左侧的导航栏中,单击数据库开发 > 库表同步
  5. 库表同步页签中,单击基础配置项
  6. 开启执行能力(若关闭,其它规则均无效)规则右侧,单击编辑
  7. 在弹出的编辑配置项页面中,打开配置内容开关。
  8. 单击提交

修改默认审批模板

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择安全与规范 > 安全规则
  3. 安全规则页签中,单击目标规则集右侧操作列中的编辑
  4. 详情页面左侧的导航栏中,单击数据库开发 > 库表同步
  5. 库表同步页签中,单击基础配置项
  6. 库表同步默认审批模板规则右侧,单击编辑
  7. 在弹出的编辑配置项页面中,单击切换审批模板
  8. 选择目标模板名称右侧操作列的选择
    说明 您也可以单击重置为免审批,使工单跳过审批步骤。
  9. 单击提交

新增规则

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择安全与规范 > 安全规则
  3. 安全规则页签中,单击目标规则集右侧操作列中的编辑
  4. 详情页面左侧的导航栏中,单击数据库开发 > 库表同步
  5. 库表同步页签中,单击操作右侧的新增规则
  6. 新增规则 - 库表同步对话框中,配置如下参数:
    配置项 说明
    检测点(必选) 选择需要增加规则的检测点。库表同步中提供了4个检测点:
    • 结构同步校验
    • 影子表同步校验
    • 空库初始化校验
    • 表一致性修复校验
    模板库(可选) 安全规则模板库中提供了大量规则模板,选择了检测点以后,您可以从模板库中按需加载规则模板。可选的模板库列表请参见模板库
    规则名称(必填) 自定义规则名称。(如您在模板库中选择了规则模板,此处会自动填充。)
    规则DSL(必填) 填写规则DSL,DSL语法请参见安全规则DSL语法。(如您在模板库中选择了规则模板,此处会自动填充。)
  7. 单击提交
  8. 新增的规则默认处于已禁用状态,单击规则右侧操作列中的启用
  9. 在弹出的对话框中单击确认