跳至內容

當我使用 Oracle 作為來源端點時,AWS DMS 需要哪些權限?

3 分的閱讀內容
0

我有使用 Oracle 作為來源端點的 AWS Database Migration Service (AWS DMS) 任務。我想知道 AWS DMS 所需的最低權限是什麼。

解決方法

不同類型的 DMS 任務設定和不同類型的遷移所需的權限有所不同。

AWS 管理的 Oracle 來源資料庫

如需進一步了解 AWS 管理的 Oracle 資料庫權限,請參閱AWS DMS 自我管理 Oracle 來源所需的使用者帳戶權限

自我管理的 Oracle 來源資料庫

對於自我管理的 Oracle 資料庫,您必須向 DMS 使用者授予下列權限:

GRANT CREATE SESSION TO dms_user;
GRANT SELECT ANY TRANSACTION TO dms_user;
GRANT SELECT ON V_$ARCHIVED_LOG TO dms_user;
GRANT SELECT ON V_$LOG TO dms_user;
GRANT SELECT ON V_$LOGFILE TO dms_user;
GRANT SELECT ON V_$LOGMNR_LOGS TO dms_user;
GRANT SELECT ON V_$LOGMNR_CONTENTS TO dms_user;
GRANT SELECT ON V_$DATABASE TO dms_user;
GRANT SELECT ON V_$THREAD TO dms_user;
GRANT SELECT ON V_$PARAMETER TO dms_user;
GRANT SELECT ON V_$NLS_PARAMETERS TO dms_user;
GRANT SELECT ON V_$TIMEZONE_NAMES TO dms_user;
GRANT SELECT ON V_$TRANSACTION TO dms_user;
GRANT SELECT ON V_$CONTAINERS TO dms_user;                   
GRANT SELECT ON ALL_INDEXES TO dms_user;
GRANT SELECT ON ALL_OBJECTS TO dms_user;
GRANT SELECT ON ALL_TABLES TO dms_user;
GRANT SELECT ON ALL_USERS TO dms_user;
GRANT SELECT ON ALL_CATALOG TO dms_user;
GRANT SELECT ON ALL_CONSTRAINTS TO dms_user;
GRANT SELECT ON ALL_CONS_COLUMNS TO dms_user;
GRANT SELECT ON ALL_TAB_COLS TO dms_user;
GRANT SELECT ON ALL_IND_COLUMNS TO dms_user;
GRANT SELECT ON ALL_ENCRYPTED_COLUMNS TO dms_user;
GRANT SELECT ON ALL_LOG_GROUPS TO dms_user;
GRANT SELECT ON ALL_TAB_PARTITIONS TO dms_user;
GRANT SELECT ON SYS.DBA_REGISTRY TO dms_user;
GRANT SELECT ON SYS.OBJ$ TO dms_user;
GRANT SELECT ON DBA_TABLESPACES TO dms_user;
GRANT SELECT ON DBA_OBJECTS TO dms_user;
GRANT SELECT ON SYS.ENC$ TO dms_user;
GRANT SELECT ON GV_$TRANSACTION TO dms_user;
GRANT SELECT ON V_$DATAGUARD_STATS TO dms_user;
GRANT SELECT ON V_$DATABASE_INCARNATION TO dms_user;

注意:

  • 只有當 Oracle 版本低於 11.2.0.3 時,才授予 SELECT ON DBA_OBJECTS 權限。
  • 如果您啟用了透明資料加密 (TDE),則授予 SELECT ON SYS.ENC$ 權限。
  • 只有當來源資料庫是 Oracle RAC,且 AWS DMS 版本為 3.4.6 或更新版本時,才授予 SELECT ON GV_$TRANSACTION 權限。/li>
  • 只有在您在最新版本的 DMS 版本 3.4.6、3.4.7 或更新版本中,使用 Oracle Active Data Guard 備用資料庫作為來源資料庫時,才會授予 SELECT ON V_$DTATGUARD_STATS 權限。

**注意:**DMS 支援 Oracle Data Guard 備用資料庫作為來源。啟動 Data Guard 後,您能以唯讀模式開啟備用資料庫。授予權限後,執行幾次日誌切換以將權限複寫到備用資料庫。如需詳細資訊,請參閱 Oracle 網站上的強制日誌切換

若要顯示檢視,請授予下列權限:

GRANT SELECT on ALL\_VIEWS to dms_user;

若要公開檢視,您還必須將 exposeViews=true 連線屬性新增至來源端點。

您可以在複寫任務中使用與資料表名稱相符的模式。您也可以允許來源資料庫使用者從不同的模式讀取資料表。無論哪項任務,都請新增以下權限:

GRANT SELECT ANY TABLE to dms_user;

若要在複寫任務中指定資料表清單,請授予下列權限:

GRANT SELECT on schema.table;

若要從 Oracle Real Application Clusters (RAC) 遷移,您必須對具有 gv_$v_$ 首碼的具體化視觀表授予 SELECT 權限。

若要啟用大型二進位物件 (LOB) 的 DMS 驗證,請授予以下權限:

GRANT execute on sys.dbms_crypto to dms_user;

如果您使用 addSupplementalLogging 連線屬性,則授予下列權限:

GRANT ALTER ANY TABLE to dms_user

具有持續複寫任務的 Oracle 來源資料庫

若要在複寫期間讀取重做日誌,Oracle 提供了 Oracle LogMiner 和 Oracle Binary Reader。

若要使用 LogMiner,請授予以下權限:

GRANT EXECUTE ON dbms_logmnr TO dms_user;

對於 Oracle Database 12c 及更新版本,請授予以下權限:

GRANT LOGMINING TO dms_user;

Binary Reader 會使用 Oracle 目錄來讀取重做和封存日誌。您必須授予 DMS 存取權,才能在來源資料庫上建立 Oracle 目錄:

GRANT CREATE ANY DIRECTORY to dms_user;

若要使用 DMS 建立 Oracle 目錄,您必須授予 CREATE ANY DIRECTORY 權限。DMS 會使用 DMS_ 首碼建立目錄名稱。如果您未授予 CREATE ANY DIRECTORY 權限,則必須手動建立目錄。手動建立 Oracle 目錄時,您在端點上指定的 Oracle 使用者不一定是建立目錄的使用者。在這種情況下,您必須授予以下 READ on DIRECTORY 權限:

GRANT READ ON DIRECTORY RedoLog_directory_name to dms_user;
GRANT READ ON DIRECTORY ArchiveLog_directory_name to dms_user;

若要確認您是否建立了目錄,請查詢 ALL_DIRECTORIES 資料表。

若要使用二進位讀取器存取自動儲存管理 (ASM) 中的重做日誌,請向 Oracle 端點使用者授予下列其中一個權限。

如果您將重做日誌儲存在 ASM 中,且 AWS DMS 從 ASM 存取日誌,則授予以下權限:

GRANT SELECT ON v_$transportable_platform  to dms_user;

若要使用 Oracle 11g Release 2 版本 11.2.0.2 或更新版本存取 ASM 帳戶,請授予 SYSASM 權限:

GRANT SYSASM to ASM_USER;

**注意:**對於受支援的較早 Oracle 版本,您可以授予 SYSDBA 權限。

當 Oracle 來源使用 ASM 時,您可以使用 Binary Reader 中的高效能選項來大規模處理交易。這些選項包括額外的連線屬性,用於指定平行執行緒 (parallelASMReadThreads) 的數量和預讀緩衝區 (readAheadBlocks) 的數量。請同時設定這些屬性,以提升 CDC 任務的效能。

若要擔任 ASM 使用者,請修改您的 Oracle 來源端點,將 DMS 使用者和 ASM 使用者加入,並以逗號分隔。

來源端點格式範例:

使用者名稱:oracle_user,asm_user
密碼:oracle_user_password,asm_user_password

相關資訊

使用 Oracle 資料庫作為 AWS DMS 的來源

使用自我管理 Oracle 待命資料庫作為 AWS DMS 中 CDC 的 Binary Reader 的來源

AWS 官方已更新 8 個月前