管理移轉至自治式 AI 資料庫時的角色和權限
從其他 Oracle 資料庫移轉至 Autonomous AI Database 時,您可能會注意到支援角色和系統權限的方式有何不同。Autonomous AI Database 中沒有傳統 Oracle 資料庫中通用的部分角色和權限。這主要是因為:
- 完全受管理自治式 AI 資料庫:許多使用這些權限和角色執行的資料庫管理作業都會自動處理,而授予這些作業可能會危害自治式 AI 資料庫的安全性。
- 以新角色取代和增強:某些舊角色會被提供同等功能的 Autonomous AI 資料庫特定角色取代或延伸。
為了確保順暢的移轉體驗,Autonomous AI Database 會透過下列其中一種方式自動管理不支援的角色和權限:
- 忽略不支援的敘述句:系統會忽略「自治式 AI 資料庫」不支援的角色或權限參照的敘述句。
- 對應至支援的等同項目:在許多情況下,不支援的角色會取代為其對應的「自治式 AI 資料庫」等同項目,例如以
PDB_DBA角色取代DBA角色。
這些轉換是以通透方式執行。移轉之後,您可以在 DBA_CONVERTED_STATEMENTS 檢視中複查自動轉換的敘述句。下表列出來自其他 Oracle 資料庫的角色及其在自治式 AI 資料庫中的對應同等資料庫:
| 來源資料庫角色 | 自治式 AI 資料庫中的對應角色 |
|---|---|
DBA |
PDB_DBA |
DATAPUMP_EXP_FULL_DATABASE |
DATAPUMP_CLOUD_EXP |
DATAPUMP_IMP_FULL_DATABASE |
DATAPUMP_CLOUD_IMP |
EXP_FULL_DATABASE |
DATAPUMP_CLOUD_EXP |
IMP_FULL_DATABASE |
DATAPUMP_CLOUD_IMP |
請參閱此頁面中的限制小節,瞭解「自治式 AI 資料庫」不支援,因此無法在移轉或匯入作業期間解決的角色和權限。
在移轉至 Autonomous AI 資料庫期間,自動角色和權限處理的主要優點如下:
- 無縫移轉:自動調整不支援的角色和權限可降低移轉複雜性,並有助於避免因不支援的授權或撤銷作業而導致失敗。
- 減少手動工作:無需手動複查和編輯 SQL 陳述式,從而實現更快、無錯誤的移轉。
- 作業連續性:藉由抑制錯誤和對應角色,自治式 AI 資料庫可確保業務作業不會因權限相關問題而中斷。
- 增強透明度:所有自動調整都可透過
DBA_CONVERTED_STATEMENTS檢視進行稽核,提供移轉期間所做變更的清晰洞察分析。
查詢和管理已轉換敘述句
您可以查詢 DBA_CONVERTED_STATEMENTS 視觀表以複查原始和轉換的 SQL 敘述句,以及移轉期間所採取的動作。
您可以查詢 DBA_CONVERTED_STATEMENTS 視觀表,複查修改或忽略哪些授權和撤銷敘述句。此檢視會顯示原始 SQL 敘述句、轉換的敘述句以及採取的動作 (如果適用),讓您能夠稽核變更並確保與自治式 AI 資料庫中支援的角色和權限一致。
下列範例顯示如何查詢和解譯此資訊。
範例 1:
SELECT
DBMS_LOB.SUBSTR(original_sql_text, 1000, 1) AS original_sql_text,
DBMS_LOB.SUBSTR(converted_sql_text, 1000, 1) AS converted_sql_text,
action_taken
FROM
DBA_CONVERTED_STATEMENTS;
範例輸出顯示原始 SQL 敘述句已取代為僅包含自治式 AI 資料庫支援之角色和權限的新敘述句。
ORIGINAL_SQL_TEXT
-----------------------------------------------------------------------------------------------------------------------------------------------------------
grant DBA, DATAPUMP_EXP_FULL_DATABASE, DATAPUMP_IMP_FULL_DATABASE, CDB_DBA, EM_EXPRESS_ALL, CREATE ANY LIBRARY, SYSDBA, ALTER SESSION, ALTER SYSTEM to usr1
CONVERTED_SQL_TEXT
-----------------------------------------------------------------------------------------------------------------------------------------------------------
GRANT ALTER SYSTEM, ALTER SESSION, UNLIMITED TABLESPACE, DATAPUMP_CLOUD_EXP, DATAPUMP_CLOUD_IMP, PDB_DBA TO USR1
ACTION_TAKEN
-----------------------------------------------------------------------------------------------------------------------------------------------------------
REPLACED
DATAPUMP_EXP_FULL_DATABASE 和 DATAPUMP_IMP_FULL_DATABASE 角色不適用於自治式 AI 資料庫。這些角色會分別自動對應至 DATAPUMP_CLOUD_EXP 和 DATAPUMP_CLOUD_IMP 角色。
範例 2:
SELECT
DBMS_LOB.SUBSTR(original_sql_text, 1000, 1) AS original_sql_text,
DBMS_LOB.SUBSTR(converted_sql_text, 1000, 1) AS converted_sql_text,
action_taken
FROM
DBA_CONVERTED_STATEMENTS;
範例輸出顯示已忽略原始 SQL 敘述句,因為自治式 AI 資料庫不支援任何指定的角色或權限。
ORIGINAL_SQL_TEXT
--------------------------------------------------------------------------------
grant CREATE LIBRARY, CDB_DBA, EM_EXPRESS_ALL, XDB_WEBSERVICES from usr1
CONVERTED_SQL_TEXT
--------------------------------------------------------------------------------
(null)
ACTION_TAKEN
--------------------------------------------------------------------------------
IGNORED
輸出顯示已忽略要求權限 (例如 CREATE LIBRARY、EM_EXPRESS_ALL 和 XDB_WEBSERVICES) 的原始 SQL 敘述句。自治式 AI 資料庫不支援這些角色和權限。因此,對應的轉換 SQL 為空值,所採取的動作會標示為 IGNORED。
original_sql_text是原始 SQL 敘述句,最多 1000 個字元。converted_sql_text是轉換後的 SQL 陳述式,最多 1000 個字元。action_taken指示敘述句是IGNORED或REPLACED。
如需詳細資訊,請參閱 PURGE_CONVERTED_STMTS 檢視。
複查 DBA_CONVERTED_STATEMENTS 視觀表中轉換的敘述句之後,您可以執行 purge_converted_stmts 程序,移除所有敘述句或只移除超過指定保留期間的敘述句。舉例而言:
BEGIN
DBMS_CLOUD_ADMIN.PURGE_CONVERTED_STMTS(
retention_date => SYSTIMESTAMP - INTERVAL '1' DAY
);
END;
/
這會根據目前的時間戳記,從超過 1 天的 DBA_CONVERTED_STATEMENTS 檢視中移除項目。
如需詳細資訊,請參閱 PURGE_CONVERTED_STMTS 程序。
限制
從其他 Oracle 資料庫移轉至自治式 AI 資料庫時,不支援下列角色和權限。
權限:
SYSDBASYSOPERGRANT ANY PRIVILEGECREATE LIBRARYCREATE ANY LIBRARYEXPORT FULL DATABASEIMPORT FULL DATABASECREATE EXTERNAL JOBSYSBACKUPSYSDGSYSKMADMINISTER KEY MANAGEMENTFLASHBACK ARCHIVE ADMINISTERINHERIT ANY REMOTE PRIVILEGESCREATE CREDENTIALCREATE ANY CREDENTIALSYSRACTEXT DATASTORE ACCESSENABLE DIAGNOSTICSCREATE TRUE CACHE
角色:
CDB_DBAEM_EXPRESS_ALLEM_EXPRESS_BASICXDB_SET_INVOKERXDB_WEBSERVICESXDB_WEBSERVICES_WITH_PUBLICXDB_WEBSERVICES_OVER_HTTPEXECUTE_CATALOG_ROLESCHEDULER_ADMINOEM_MONITORGDS_CATALOG_SELECTHS_ADMIN_EXECUTE_ROLEDBMS_MDX_INTERNALEJBCLIENTJMXSERVERGGSYS_ROLEXDBADMIN