Oracle 数据源需要哪些权限
-
简述
CloudCanal 在做 Oracle 作为源/对端的数据迁移同步时,需要提供的账号有一些赋权。
如果在添加数据源的时候使用 Oracle 账号已经具有 DBA 权限,那么可以忽略下面的具体权限申请Oracle 为源端
- GRANT CONNECT,SELECT_CATALOG_ROLE to xxxxx
- 用途:库/表/列的元信息查询
- Oracle 原表的
SELECT
权限- 用途:全量数据迁移
增量同步(物化视图)
CREATE MATERIALIZED VIEW LOG ON xxx
- 用途:创建物化视图日志表并记录数据变更
CREATE INDEX xxxx
- 用途:加速查询物化视图日志表的查询
DROP MATERIALIZED VIEW LOG ON xxx
、DROP INDEX xxxx
- 用途:删除任务时,清理清理资源
DEETE FROM mlog_xxx
,mlog_xxx 为源端表的雾化视图日志表名- 用途:增量数据同步成功后会删除对应的 MLOG 记录
增量同步(REDO)
GRANT EXECUTE on SYS.DBMS_LOGMNR TO xxxx
、GRANT SELECT ANY TRANSACTION TO xxxx
- 用途:分析 REDO 日志
- 提示:SYS.DBMS_LOGMNR 需要用 SYS 身份才能成功授权
GRANT EXECUTE on SYS.DBMS_LOGMNR_D TO xxxx
- 用途:定时生成 REDO 字典的权限
- 提示:SYS.DBMS_LOGMNR_D 需要用 SYS 身份才能成功授权
- (可选)
ALTER TABLE xxxx DROP SUPPLEMENTAL LOG xxx
、ALTER TABLE xxxx ADD SUPPLEMENTAL LOG xxx
- 用途:若表级别没有配置补全日志,则 CloudCanal 会自动设置 。
- (可选)
ALTER SYSTEM ARCHIVE LOG CURRENT
- 用途:定时强制切换日志,保证 REDO 日志可以稳定的产生。
Oracle 为对端
- GRANT CONNECT,SELECT_CATALOG_ROLE to xxxxx
- 用途:库/表/列的元信息查询
CREATE TABLE
、CREATE INDEX
、COMMENT ON [TABLE/COLUMN]
- 用途:结构迁移时在对端创建 表结构
ALTER TABLE
- 用途:同步来自源端的 DDL 变更
- 对应的 Oracle 表
INSERT
、UPDATE
、DELETE
- 用途:同步源端数据变更
- GRANT CONNECT,SELECT_CATALOG_ROLE to xxxxx
Copyright © 2020 ClouGence, Inc.备案号:浙ICP备20007605号-2