当前位置: 首页 > news >正文

达梦DMDRS数据库同步用户最小权限

DMDRS服务运行过程中,使用的数据库同步用户需要一定的权限访问数据库数据,如果不能赋予DMDRS同步用户DBA权限,为确保同步的正确性,数据库管理员可根据应用场景配置数据库同步用户的最小权限。

1、源数据库同步用户最小权限

赋予DM8源数据库同步用户最小权限的脚本示例请参见DMDRS数据库同步用户最小权限脚本示例,具体的权限说明如下表所示。

权限类别权限说明权限
基础权限DM8数据库用户默认具有PUBLIC角色权限。需要赋予如下权限:
PUBLIC
源DMDRS在启动、数据装载及同步过程中需要使用数据库数据字典表来查询如附加日志信息、日志信息、数据库实例名和表定义等相关信息。需要赋予如下权限:
SOI、VTI
源DMDRS在启动时需要同步用户有创建会话的权限。需要赋予如下权限:
CREATE SESSION
装载相关权限装载时,数据库用户需要具有装载表的查询权限。
如果待装载的表或序列在当前用户下,不需要额外赋予任何查询权限。
如果待装载的表或序列在其他用户下,则需要赋予待装载表的查询权限。
需要赋予如下权限:
SELECT ON <待装载表/序列的模式名>.<待装载表/序列的表名>
同步相关权限DM8触发器同步时,如果数据库用户不是SYSDBA用户,需要对SYSDBA.DRS_$DDL_LOG具有查询权限。需要赋予如下权限:
SELECT ON SYSDBA.DRS_$DDL_LOG
DSC同步相关权限数据库为DSC时,数据库用户需要具有建表、INSERT和UPDATE权限,以及建包和调用的权限。需要赋予如下权限:
CREATE TABLE|PACKAGE

说明

  • 对于旧版本DM8无SOI、VTI权限的情况,使用同等权限的对象查询权限即可。
    SYS.V$RLOG
    SYS.V$DM_INI
    SYS.V$RLOGFILE
    SYS.V$DM_ARCH_INI
    SYS.V$VERSION
    SYS.V$ARCH_FILE
    SYS.V$IFUN
    SYS.V$DYNAMIC_TABLES
    SYS.V$DYNAMIC_TABLE_COLUMNS
    DSC还需包含以下对象查询权限:
    SYS.V$DCR_GROUP
    SYS.V$DCR_EP
    SYS.V$DM_MAL_INI
  • 对于旧版本DM8无CREATE SESSION权限的情况,删除该权限即可。

2、目标数据库同步用户最小权限

2.1、DM8目标数据库同步用户最小权限

赋予DM8目标数据库同步用户最小权限的脚本示例请参见DMDRS数据库同步用户最小权限脚本示例,具体的权限说明如下表所示。

权限类别权限说明权限
基础权限目标DMDRS在执行DML时需要数据操作权限。需要赋予如下权限:
PUBLIC
目标DMDRS在启动时需要在目标数据库中创建辅助表和辅助存储过程。需要赋予如下权限:
RESOURCE
目标DMDRS在启动时需要查询数据库的相关参数信息、系统表字典信息。需要赋予如下权限:
SOI、VTI
目标DMDRS在启动时需要同步用户有创建会话的权限。需要赋予如下权限:
CREATE SESSION
装载与同步相关权限若需要同步在非同步用户模式下已存在的表/序列的数据,需要赋予在待同步表/序列上的DML权限或查询权限。需要赋予如下权限:
INSERT|UPDATE|DELETE ON <目标表的模式名>.<目标表名>
SELECT ON <目标序列的模式名>.<目标序列名>
若需要同步在非同步用户模式下未存在的表/序列的数据,可以先在装载时使用CREATE掩码同步创建表/序列DDL语句,然后赋予该表/序列的DML权限或查询权限。也可为同步用户赋予在所有表/序列上的DML权限或查询权限。需要赋予如下权限:
INSERT|UPDATE|DELETE|SELECT ANY TABLE
SELECT ANY SEQUENCE
若需要同步在非同步用户模式下表的注释,需要赋予创建表注释的权限。需要赋予如下权限:
COMMENT ANY TABLE
若需要同步在非同步用户模式下的对象的DDL语句,需要赋予相应的DDL权限。
注:装载表时需要赋予TABLE和INDEX的权限。授予ANY权限前,需先执行语句“ALTER SYSTEM SET 'ENABLE_DDL_ANY_PRIV'=1 BOTH;”开启ANY的授权权限。
需要赋予如下权限:
CREATE|ALTER|DROP ANY <对象类型>
若需要非模式对象(表空间、用户、角色和公共同义词)的DDL操作权限,需要赋予同步用户相应的DDL权限。其中角色和公共同义词不需要ALTER权限。需要赋予如下权限:
CREATE|ALTER|DROP <对象类型>
若需要同步在非同步用户模式下的非表对象的DDL语句或源DMDRS的DDL_MASK配置SQL掩码情况下同步对象的DDL语句,需要赋予同步用户辅助存储过程的执行权限以及非同步用户下模式所属用户的存储过程的创建权限。需要赋予如下权限:
EXECUTE ON PROCEDURE "DRS_$DDL_SQL_PROC"
CREATE PROCEDURE TO <非同步用户下模式所属的用户>

说明

  • 对于旧版本DM8无SOI、VTI权限的情况,使用同等权限的对象查询权限即可。
    SYS.V$DM_INI
    V$IFUN
    SYS.V$LOCK
    SYS.V$SESSIONS
  • 对于旧版本DM8无CREATE SESSION权限的情况,删除该权限即可。

2.2、Oracle目标数据库同步用户最小权限

赋予Oracle目标数据库同步用户最小权限的脚本示例请参见DMDRS数据库同步用户最小权限脚本示例,具体的权限说明如下表所示。

权限类别权限说明权限
基础权限启动时需要在目标数据库中创建辅助表和辅助存储过程。需要赋予如下权限:
RESOURCE
连接数据库时需要创建会话。需要赋予如下权限:
CONNECT
启动时需要查询数据库的相关参数信息。需要赋予如下对象的查询权限:
V_$INSTANCE、V_$PARAMETER、V_$SESSION、V_$LOCK、DBA_TAB_PARTITIONS
装载相关权限需要系统表、系统字典及动态视图的查询权限。需要赋予如下对象的查询权限:
SYS.OBJ$、SYS.USER$、SYS.COL$、SYS.COLTYPE$、SYS.CCOL$、SYS.CDEF$、SYS.ATTRCOL$、DBA_IND_COLUMNS、DBA_INDEXES
同步相关权限需要系统表、系统字典及动态视图的查询权限。需要赋予如下对象的查询权限:
SYS.IND$、SYS.SEQ$、DBA_TAB_SUBPARTITIONS、DBA_CONSTRAINTS、GV_$INSTANCE(目标DMDRS主备)
装载与同步相关权限需要非同步用户模式下已存在的待同步表/序列的操作权限。需要赋予如下权限:
INSERT|UPDATE|DELETE ON <目标表的模式名>.<目标表名>
SELECT ON <目标序列的模式名>.<目标序列名>
需要非同步用户模式下未存在的表/序列的数据的操作权限。也可以在目标同步表创建后,同上行所述单独为每张表赋予操作权限。需要赋予如下权限:
INSERT|UPDATE|DELETE|SELECT ANY TABLE
SELECT ANY SEQUENCE
需要非同步用户模式下对象的DDL权限。需要赋予如下权限:
CREATE|ALTER|DROP ANY <对象类型>

2.3、MySQL目标数据库同步用户最小权限

赋予MySQL目标数据库同步用户最小权限的脚本示例请参见DMDRS数据库同步用户最小权限脚本示例,具体的权限说明如下表所示。

权限类别权限说明权限
基础权限启动时需要在dbname参数指定的目标库下创建辅助表和辅助存储过程。需要赋予如下权限:
CREATE|DROP|CREATE ROUTINE|INSERT|UPDATE|DELETE ON <目标库名>.*
连接数据库时需要创建会话(用户创建时默认授予)。需要赋予如下权限:
USAGE
装载与同步相关权限需要目标数据库中已存在的待同步表的操作和查询权限。需要赋予如下权限:
INSERT|UPDATE|DELETE|SELECT ON <目标表的模式名>.<目标表名>
需要目标数据库中未存在的待同步表的操作和查询权限。也可以在目标同步表创建后,同上行所述单独为每张表赋予操作和查询权限。需要赋予如下权限:
INSERT|UPDATE|DELETE|SELECT ON <目标表的模式名>.*
需要目标数据库中待同步对象的DDL权限。需要赋予如下权限:
CREATE|ALTER|DROP|INDEX|CREATE ROUTINE|ALTER ROUTINE|REFERENCES ON <目标表的模式名>.*

2.4、SQL Server目标数据库同步用户最小权限

赋予SQL server目标数据库同步用户最小权限的脚本示例请参见DMDRS数据库同步用户最小权限脚本示例,具体的权限说明如下表所示。

权限类别权限说明权限
基础权限目标DMDRS在执行DML时需要数据操作权限。需要赋予如下权限:
PUBLIC
目标DMDRS在启动时需要在目标数据库中创建辅助表和辅助存储过程。需要赋予如下权限:
  • EXEC sp_addrolemember 'db_ddladmin'
  • ALTER ON SCHEMA::<目标模式>
目标DMDRS在启动时需要同步用户有创建会话的权限。需要赋予如下权限:
CONNECT
装载与同步相关权限若需要同步在非同步用户模式下已存在的表/序列的数据,需要赋予在待同步表/序列上的DML权限或查询权限。需要赋予如下权限:
  • INSERT|UPDATE|DELETE ON <目标表的模式名>.<目标表名>
  • SELECT ON <目标序列的模式名>.<目标序列名>
若需要同步在非同步用户模式下未存在的表/序列的数据,可以先在装载时使用CREATE掩码同步创建表/序列DDL语句,然后赋予该表/序列的DML权限或查询权限。也可为同步用户赋予在所有表/序列上的DML权限或查询权限。需要赋予如下权限:
INSERT|UPDATE|DELETE|SELECT ON SCHEMA::<目标模式名>
若需要同步在非同步用户模式下的对象的DDL语句,需要赋予相应的DDL权限。需要赋予如下权限:
  • EXEC sp_addrolemember 'db_ddladmin'
  • ALTER ON SCHEMA::<目标模式>

2.5、PostgreSQL目标数据库同步用户最小权限

赋予PostgreSQL目标数据库同步用户最小权限的脚本示例请参见DMDRS数据库同步用户最小权限脚本示例,具体的权限说明如下表所示。

权限类别权限说明权限
基础权限启动时需要在dbname参数指定的目标库下创建辅助表和辅助存储过程。需要赋予如下权限:
CREATE ON DATABASE <目标库名>
连接数据库时需要创建会话(用户创建时默认授予)。需要赋予如下权限:
CONNECT ON DATABASE <目标库名>
装载与同步相关权限需要public模式下辅助表的操作权限。需要赋予如下权限:
USAGE ON SCHEMA public
INSERT|UPDATE|DELETE|SELECT ON ALL TABLES IN SCHEMA public
需要目标数据库中已存在的待同步表上的操作和查询权限。需要赋予如下权限:
USAGE ON SCHEMA <目标表的模式名>
INSERT|UPDATE|DELETE|SELECT ON <目标表的模式名>.<目标表名>
需要目标数据库中未存在的待同步表上的操作和查询权限。也可以在目标同步表创建后,同上行所述单独为每张表赋予操作和查询权限。需要赋予如下权限:
USAGE ON SCHEMA <目标表的模式名>
INSERT|UPDATE|DELETE|SELECT ON ALL TABLES IN SCHEMA <目标表的模式名>
需要非同步用户模式下未存在的表/序列的数据的操作权限。也可以在目标同步表创建后,同上行所述单独为每张表赋予操作权限。需要赋予如下权限:
USAGE ON SCHEMA <目标表的模式名>
INSERT|UPDATE|DELETE|SELECT ON ALL TABLES IN SCHEMA <目标表的模式名>
需要目标数据库中待同步对象的DDL权限。需要赋予如下权限:
CREATE ON SCHEMA <目标模式名>
http://www.jsqmd.com/news/206809/

相关文章:

  • 吐血推荐9个AI论文工具,专科生轻松搞定毕业论文!
  • 考虑储能电池参与一次调频技术经济模型的容量配置方法Matlab代码
  • 全自动云像仪:专为全天候、高精度监测天空云况设计
  • 大模型是否值得转行?从技术壁垒到就业前景全方位解析,字节跳动2025届薪资揭秘,大模型与算法岗位薪酬丰厚
  • TCS3430 XYZ三刺激真彩传感器原理图设计,已量产(光线传感器)
  • 基于微信小程序的自习室预约小程序的设计与实现(源代码+文档+PPT+调试+讲解)
  • 基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究附Python代码
  • 一站式讲清IO多路复用(轻松愉悦版)
  • 基于微信小程序的体育场馆预约平台设计与实现(源代码+文档+PPT+调试+讲解)
  • 一些常见的英文期刊库(爱思唯尔、MDPI、施普林格等)
  • 基于 MATLAB 的电力系统动态分析研究【IEEE9、IEEE68系节点】​附Matlab代码
  • Pharos STEM 台式场发射电镜在外泌体形貌与粒径分析中的应用
  • python网络流量分析与入侵检测-计算机毕业设计源码+LW文档
  • 基于 SIFT 和 RANSAC 算法对高分辨率图像进行图像伪造检测附Matlab代码
  • 2026运维监控平台选型避坑指南
  • 探秘 AgentRun|流量一大就瘫痪?如何解决AI 模型调用之痛
  • 论文降重哪个好用?真实体验对比嘎嘎降AI与比话降AI
  • 基于 VSC 的 UPFC(统一潮流控制器)研究附Simulink仿真
  • 全网最全研究生必用AI论文写作软件TOP9:开题报告文献综述必备
  • ChatGPT论文降重经验分享:如何有效降低论文AI率
  • 【Transformer回归预测】基于TCN-Transformer实现数据回归预测附Matlab代码
  • day 50
  • 【从江瑶浴】品牌代表深度测评:谁才是真正的行业第一?
  • MIPS架构是什么?
  • 【阵列优化】基于遗传算法及其在稀布阵列天线中的应用附matlab代码
  • 毕业论文降重神器实测体验:嘎嘎降AI与比话降AI对比评测
  • AI论文修改润色:如何有效降低论文AI率?
  • 论文降重多少钱?谈谈靠谱的降AI率工具费用与效果
  • C 内存管理
  • 论文降重技巧实操分享:如何有效降低论文AI率