本頁面說明如何設定 Oracle 來源資料庫,以便使用資料庫遷移服務執行單次遷移作業。如要透過資料庫遷移服務從來源 Oracle 資料庫提取資料,您必須將適當權限授予使用者帳戶,該帳戶將用於連線至資料庫,以及存取結構定義和程式碼物件。
根據預設,資料庫遷移服務會嘗試透過
DBA_VIEWS 存取所有物件定義。DBA_VIEWS 的存取權是透過 SELECT ANY DICTIONARY 權限授予。
如果遷移使用者帳戶無法存取 DBA 檢視表,資料庫遷移服務會改用
ALL_VIEWS。這種方法可讓您以最大彈性定義最符合需求的安全性模型。
如需確切的設定步驟,請參閱來源資料庫的相關章節:
設定 Amazon RDS for Oracle 資料庫
如要設定 Amazon RDS 來源資料庫,以便單次遷移資料,請將適當權限授予資料庫遷移服務會使用的使用者帳戶
請將每個指令中的 USER_NAME 替換為您用於遷移作業的使用者帳戶名稱。執行這些指令後,系統會授予從 V$DATABASE 讀取的權限,這是驗證作業的必要條件。
GRANT CONNECT TO USER_NAME; GRANT CREATE SESSION TO USER_NAME; GRANT SELECT ANY TABLE TO USER_NAME; GRANT SELECT ANY DICTIONARY TO USER_NAME; exec rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE','USER_NAME','SELECT');
設定 Oracle 資料庫
如要設定 Oracle 來源資料庫,以便單次遷移資料,請將適當權限授予資料庫遷移服務會使用的使用者帳戶
請將每個指令中的 USER_NAME 替換為您用於遷移作業的使用者帳戶名稱。執行這些指令後,系統會授予從 V$DATABASE 讀取的權限,這是驗證作業的必要條件。
GRANT CONNECT TO USER_NAME; GRANT CREATE SESSION TO USER_NAME; GRANT SELECT ANY TABLE TO USER_NAME; GRANT SELECT ANY DICTIONARY TO USER_NAME; GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
設定 Oracle 可插式資料庫 (PDB)
資料庫遷移服務支援 Oracle 多租戶架構,其中單一 容器資料庫 (CDB) 包含一或多個可插式資料庫 (PDB)。每個可插式資料庫都是獨立資料庫,具有專屬 ID 和名稱,可獨立管理。
如要設定 Oracle 可插式資料庫,以便與資料庫遷移服務搭配使用,請執行下列步驟:
- 建立
一般使用者。
一般使用者在
CDB$ROOT容器和可插式資料庫中具有相同身分。一般使用者可以連線至根目錄,並在根目錄和任何具備權限的可插式資料庫中執行作業。一般使用者名稱的開頭必須是C##或c##。 - 將適當權限授予要用來連結至資料庫的一般使用者。
CDB$ROOT容器和可插式資料庫層級需要不同的權限。請將每個指令中的
USER_NAME替換成您用於遷移作業的使用者帳戶名稱。執行這些指令後,系統會授予讀取V$DATABASE的權限,這是驗證作業的必要權限。- 連線至
CDB$ROOT容器,然後執行下列指令:GRANT CREATE SESSION TO USER_NAME; GRANT SET CONTAINER TO USER_NAME; GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME; GRANT EXECUTE_CATALOG_ROLE TO USER_NAME;
- 連線至可插式資料庫,然後執行下列指令:
GRANT CREATE SESSION TO USER_NAME; GRANT SET CONTAINER TO USER_NAME; GRANT SELECT ANY TABLE TO USER_NAME; GRANT SELECT ANY DICTIONARY TO USER_NAME; GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
- 連線至