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

DMDRS数据库同步用户最小权限脚本示例

1、DM8源数据库同步用户最小权限脚本示例

-- ## 基础权限 -- 插入、删除、更新数据时,需要数据操作权限 GRANT PUBLIC TO DMDRS; -- 需要系统表、系统字典和动态视图的查询权限 GRANT SOI,VTI TO DMDRS; -- 需要创建会话权限 GRANT CREATE SESSION TO DMDRS; -- ## 装载相关权限 -- 需要非同步用户下待装载表/序列上的查询权限 GRANT SELECT ON <待装载表/序列的模式名>.<待装载表/序列的表名> TO DMDRS; -- ## 同步相关权限 -- DM8触发器同步时,如果数据库用户不是SYSDBA用户,需要对SYSDBA.DRS_$DDL_LOG具有查询权限 GRANT SELECT ON SYSDBA.DRS_$DDL_LOG TO DMDRS; -- ## DSC同步相关权限 -- DSC时,需要新增以下权限: GRANT CREATE TABLE TO DMDRS; GRANT CREATE PACKAGE TO DMDRS;

说明

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

2、DM8目标数据库同步用户最小权限脚本示例

-- ## 基础权限 -- 插入、删除、更新数据时,需要数据操作权限 GRANT PUBLIC TO DMDRS; -- 启动时需要在目标数据库中创建辅助表和辅助存储过程 GRANT RESOURCE TO DMDRS; -- 需要查询数据库的相关参数信息、系统表字典信息 GRANT SOI,VTI TO DMDRS; -- 需要创建会话权限 GRANT CREATE SESSION TO DMDRS; -- ## 装载与同步相关权限 -- 需要非同步用户模式下已存在的待同步表/序列的操作权限 GRANT INSERT ON <目标表的模式名>.<目标表名> TO DMDRS; GRANT UPDATE ON <目标表的模式名>.<目标表名> TO DMDRS; GRANT DELETE ON <目标表的模式名>.<目标表名> TO DMDRS; GRANT SELECT ON <目标序列的模式名>.<目标序列名> TO DMDRS; -- 需要非同步用户模式下未存在的表/序列的数据的操作权限。也可以在目标同步表创建后,同上行所述单独为每张表赋予操作权限 GRANT INSERT ANY TABLE TO DMDRS; GRANT UPDATE ANY TABLE TO DMDRS; GRANT DELETE ANY TABLE TO DMDRS; GRANT SELECT ANY TABLE TO DMDRS; GRANT SELECT ANY SEQUENCE TO DMDRS; -- 需要非同步用户模式下创建表注释的权限 GRANT COMMENT ANY TABLE TO DMDRS; -- 需要非同步用户模式下对象的DDL权限 GRANT CREATE ANY <对象类型> TO DMDRS; GRANT ALTER ANY <对象类型> TO DMDRS; GRANT DROP ANY <对象类型> TO DMDRS; -- 需要非模式对象(表空间、用户、角色和公共同义词)的DDL权限 GRANT CREATE <对象类型> TO DMDRS; GRANT ALTER <对象类型> TO DMDRS;-- 角色和公共同义词不需要此权限 GRANT DROP <对象类型> TO DMDRS; -- 需要赋予同步用户辅助存储过程的执行权限以及非同步用户下模式所属用户的存储过程的创建权限 GRANT EXECUTE ON PROCEDURE "DRS_$DDL_SQL_PROC" TO DMDRS; GRANT CREATE PROCEDURE TO <非同步用户下模式所属的用户>;
说明
  • 对于旧版本DM8无SOI、VTI权限的情况,使用同等权限的对象查询权限即可。
    GRANT SELECT ON SYS.V$DM_INI TO DMDRS;
    GRANT SELECT ON V$IFUN TO DMDRS;
    GRANT SELECT ON SYS.V$LOCK TO DMDRS;
    GRANT SELECT ON SYS.V$SESSIONS TO DMDRS;
  • 对于旧版本DM8无CREATE SESSION权限的情况,删除该权限即可。

3、Oracle目标数据库同步用户最小权限脚本示例

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

4、MySQL目标数据库同步用户最小权限脚本示例

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

5、SQL Server目标数据库同步用户最小权限脚本示例

-- ## 基础权限 -- 启动时需要在目标数据库中创建辅助表和辅助存储过程 EXEC sp_addrolemember 'db_ddladmin', 'DMDRS'; GRANT ALTER ON SCHEMA::<目标模式> TO DMDRS; -- 连接数据库时需要创建会话权限(用户创建时默认授予) GRANT CONNECT TO DMDRS; -- ## 装载与同步相关权限 -- 需要非同步用户模式下已存在的待同步表/序列的操作权限 GRANT INSERT ON <目标表的模式名>.<目标表名> TO DMDRS; GRANT UPDATE ON <目标表的模式名>.<目标表名> TO DMDRS; GRANT DELETE ON <目标表的模式名>.<目标表名> TO DMDRS; GRANT SELECT ON <目标序列的模式名>.<目标序列名> TO DMDRS; -- 需要非同步用户模式下未存在的表/序列的数据的操作权限。也可以在目标同步表创建后,同上行所述单独为每张表赋予操作权限 GRANT INSERT ON SCHEMA::<目标模式名> TO DMDRS; GRANT UPDATE ON SCHEMA::<目标模式名> TO DMDRS; GRANT DELETE ON SCHEMA::<目标模式名> TO DMDRS; GRANT SELECT ON SCHEMA::<目标模式名> TO DMDRS; -- 需要非同步用户模式下对象的DDL权限 EXEC sp_addrolemember 'db_ddladmin', 'DMDRS'; GRANT ALTER ON SCHEMA::<目标模式> TO DMDRS;

6、PostgreSQL目标数据库同步用户最小权限脚本示例

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

相关文章:

  • 学术综述不用愁:paperzz 文献综述功能,如何让硕士论文 “文献部分” 更专业?
  • 大数据领域数据清洗的全面指南
  • 基于微信小程序的中小学生个性化阅读平台的设计与实现(源代码+文档+PPT+调试+讲解)
  • 学霸同款9个AI论文写作软件,本科生轻松搞定毕业论文!
  • 达梦DMDRS数据库同步用户最小权限
  • 吐血推荐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代码