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辅助表的生成规则和作用,这篇文章可以作为参考。

相关推荐
东方佑21 小时前
去魅:工具调用、Agent 调用、A2A、MCP、Harness 到底都是什么
服务器·网络·数据库
瑞克-桑切斯1 天前
2、 MySQL 主从复制与读写分离
数据库·mysql
收纳过往1 天前
数据库加索引的时机:慢查询日志说话
android·开发语言·数据库·python·低代码·rxjava
咖啡八杯1 天前
Redis 工具封装:RedisCache 对 Operations 体系的二次封装
java·数据库·redis·缓存·框架·springboot·若依
PaperData1 天前
2000-2025年地级市科技支行设立数据
数据库·科技
实泽有之,无泽虚之1 天前
ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务问题原因及解决办法
数据库·oracle
牧瀬クリスだ1 天前
Redis Hash实战:高效存储对象与购物车
java·数据库·redis·算法·哈希算法
A小码哥1 天前
【外】水星3号实测 1068 token 每秒靠谱吗
数据库
qq_452396231 天前
第六篇:《SQL 优化的艺术:从慢查询到毫秒级响应》
数据库·sql
ShineWinsu1 天前
对于Qt:QWidget通用属性的解析—上
数据库·qt·microsoft·面试·gui·属性·qwidget