news 2026/5/23 20:35:32

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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";
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/16 15:56:45

大模型是否值得转行?从技术壁垒到就业前景全方位解析,字节跳动2025届薪资揭秘,大模型与算法岗位薪酬丰厚

大模型开发分为算法工程师(门槛极高)和应用工程师(门槛较低)。若已有业务或技术壁垒的工作&#xff0c;不建议贸然转行。转行前应先业余时间尝试&#xff0c;确认兴趣和能力。大模型应用虽是当前热点&#xff0c;但未来趋势难预测&#xff0c;需谨慎评估个人优势与行业发展。选…

作者头像 李华
网站建设 2026/5/16 1:36:12

DDIA第三章 数据模型:软件开发的基石与世界的边界

1. 章节介绍 本章节探讨了数据模型在软件开发中的核心地位及其深远影响。开篇引用维特根斯坦的名言“语言的边界就是世界的边界”&#xff0c;奠定了数据模型作为我们理解和构建软件世界“语言”的重要基调。核心观点是&#xff1a;数据模型不仅是技术实现细节&#xff0c;更是…

作者头像 李华
网站建设 2026/5/22 3:24:22

236. 二叉树的最近公共祖先

简单记录学习~ 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个节点 p、q&#xff0c;最近公共祖先表示为一个节点 x&#xff0c;满足 x 是 p、q 的祖先且 x 的深度尽可能大&#xff08;一个节点也…

作者头像 李华
网站建设 2026/5/23 5:54:31

【从江瑶浴】品牌代表深度测评:谁才是真正的行业第一?

【从江瑶浴】品牌代表深度测评&#xff1a;谁才是真正的行业第一&#xff1f;在追求健康养生的今天&#xff0c;瑶浴以其独特的“以药入浴”方式&#xff0c;成为备受青睐的自然疗法。然而&#xff0c;面对市场上琳琅满目的瑶浴品牌&#xff0c;消费者往往难以抉择&#xff1a;…

作者头像 李华
网站建设 2026/5/22 12:29:37

基于微信小程序的智能雨伞借取系统(源代码+文档+PPT+调试+讲解)

课题摘要基于微信小程序的智能雨伞借取系统&#xff0c;聚焦公共出行 “雨伞借还便捷化、管理数字化、损耗可追溯” 的核心需求&#xff0c;针对传统共享雨伞 “借还登记繁琐、库存不清、归还率低” 的痛点&#xff0c;构建覆盖借伞用户、管理员的全流程借还管理生态。系统采用…

作者头像 李华
网站建设 2026/5/9 18:18:52

基于微信小程序的中小学生个性化阅读平台的设计与实现(源代码+文档+PPT+调试+讲解)

课题摘要基于微信小程序的中小学生个性化阅读平台&#xff0c;聚焦中小学阅读 “内容分级化、阅读个性化、效果可视化” 的核心需求&#xff0c;针对传统阅读 “资源适配性差、打卡形式化、家长监督缺失” 的痛点&#xff0c;构建覆盖学生、家长、教师、平台管理员的全流程阅读…

作者头像 李华