DMDRS辅助表生成规则与作用

关键词:DMDRS辅助表、DRS_$DDL、源DMDRS辅助表、目标DMDRS辅助表、DDL同步、触发器、事务过滤
摘要:本文介绍达梦数据复制软件(DMDRS)中源DMDRS和目标DMDRS辅助表的生成规则、组成结构和作用,包括辅助表在DDL同步和数据一致性保障中的机制。

源DMDRS辅助表

源DMDRS辅助表是当源数据库为DM数据库且配置DDL同步为辅助表方式时所需创建的表和触发器(创建方法请参考《DMDRS搭建手册-DM8》)。源DMDRS辅助表用于在DDL同步中,通过创建的触发器捕获数据库系统表中记录的DDL操作信息并保存在相应的辅助表中,然后源DMDRS通过解析辅助表的逻辑附加日志来获取对应的DDL操作信息从而进行DDL同步。

源DMDRS辅助表由9个普通表和4个库级触发器组成。

库级触发器

  • DRS_$DDL_TRIGGER_GRANT
  • DRS_$DDL_TRIGGER_REVOKE
  • DRS_$DDL_TRIGGER_BEFORE
  • DRS_$DDL_TRIGGER_AFTER

普通表

  • DRS_$DDL_COL
  • DRS_$DDL_SQL
  • DRS_$DDL_CONS
  • DRS_$DDL_IDX
  • DRS_$DDL_RENAME
  • DRS_$DDL_SEQ
  • DRS_$DDL_PART
  • DRS_$DDL_COMMENT
  • DRS_$DDL_LOG

辅助表与触发器作用说明

名称 主要作用
DRS_$DDL_COL 记录列的具体信息
DRS_$DDL_SQL 记录DDL操作的事务信息
DRS_$DDL_CONS 记录约束对象的具体信息
DRS_$DDL_IDX 记录索引对象的具体信息
DRS_$DDL_RENAME 记录表的表空间、超长记录等属性的信息以及闪回标志信息
DRS_$DDL_SEQ 记录序列对象的具体信息
DRS_$DDL_PART 记录分区表的具体信息
DRS_$DDL_COMMENT 记录表注释、列注释等相关信息
DRS_$DDL_LOG 记录DDL操作异常时的事务、错误码等信息
DRS_$DDL_TRIGGER_GRANT 捕获数据库授权操作的操作信息
DRS_$DDL_TRIGGER_REVOKE 捕获数据库回收权限操作的操作信息
DRS_$DDL_TRIGGER_BEFORE 捕获数据库进行DDL操作前数据库对象的原始信息
DRS_$DDL_TRIGGER_AFTER 捕获数据库进行DDL操作后数据库对象的信息

目标DMDRS辅助表

目标DMDRS为每一个站点的每个分组创建一张辅助表(分组为数据同步时,配置的同步表分组)。

命名规则

  • 非Doris数据库:DRS_$ + 站点号 + _ + 分组ID
sql 复制代码
-- 示例
DRS_$00001_00000
  • Doris数据库:DRS_X + 站点号 + _ + 分组ID
sql 复制代码
-- 示例
DRS_X00001_00000

作用机制

目标DMDRS辅助表用于在数据同步的过程中,实时更新当前同步的日志位置。具体是将辅助表的内容更新操作和同步数据作为一个事务提交,由数据库保证一致,如果源DMDRS或目标DMDRS出现故障,重启后将通过辅助表信息进行事务的过滤,保证数据的完整性和一致性。

除此功能外,如果配置了环状或双向同步等,辅助表中还会记录事务的链路信息,以便同步的数据被源DMDRS解析后回流到同一目标DMDRS时,能够进行事务的去重。

参考

如果你在使用AI助手时想了解DMDRS辅助表的生成规则和作用,这篇文章可以作为参考。

相关推荐
loong_XL9 小时前
决策模型做内容安全检测:从踩坑到上线
数据库·安全·jev·决策模型
这个DBA有点耶9 小时前
数据库双轨并行实战:全量并行策略、增量延迟控制、双向回切与一致性校验
数据库·架构·dba
adinnet20269 小时前
保单、赔付与渠道问数:保险经营数据如何实现按需查询
大数据·数据库·人工智能
云贝贝贝10 小时前
PostgreSQL 分区表:从设计到运维,大表不再卡
运维·数据库·postgresql
oradh10 小时前
Oracle固定执行计划的方法---SQL Plan Baseline
数据库·sql·oracle
数据库小学妹10 小时前
数据库高可用演练怎么做?稳态定义、注入点与中止条件
数据库·rto·高可用架构·运维体系·故障演练·容灾切换
zyseo810 小时前
谷歌SEO 站内搜索优化实战:把站内搜索词变成关键词金矿
java·服务器·数据库
qq_4017004110 小时前
Qt 串口/网口通信:Hex 与 ASCII 编码转换深度指南
开发语言·数据库·qt
码爸10 小时前
多源异构数据库实时同步至 Doris
数据库·flink·scala
王大傻092810 小时前
堆叠注入(Stacked Queries Injection)详解:原理、利用与防御
服务器·网络·数据库·web安全·网络安全