本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Oracle 診斷支援指令碼
接下來,您可以找到可用於在 AWS DMS 遷移組態中分析現場部署或 Amazon RDS for Oracle 資料庫的診斷支援指令碼。這些指令碼可與來源或目標端點搭配使用。這些指令碼全部寫入在 SQL *Plus 命令列公用程式中執行。如需有關使用此公用程式的詳細資訊,請參閱 Oracle 文件中的使用SQL命令列
在執行指令碼之前,請確定您使用的使用者帳戶具有存取 Oracle 資料庫的必要許可。顯示的許可設定會假設如下建立使用者。
CREATE USER
script_user
IDENTIFIED BYpassword
;
對於內部部署資料庫,請為
如下所示設定最低許可。script_user
GRANT CREATE SESSION TO
script_user
; GRANT SELECT on V$DATABASE toscript_user
; GRANT SELECT on V$VERSION toscript_user
; GRANT SELECT on GV$SGA toscript_user
; GRANT SELECT on GV$INSTANCE toscript_user
; GRANT SELECT on GV$DATAGUARD_CONFIG toscript_user
; GRANT SELECT on GV$LOG toscript_user
; GRANT SELECT on DBA_TABLESPACES toscript_user
; GRANT SELECT on DBA_DATA_FILES toscript_user
; GRANT SELECT on DBA_SEGMENTS toscript_user
; GRANT SELECT on DBA_LOBS toscript_user
; GRANT SELECT on V$ARCHIVED_LOG toscript_user
; GRANT SELECT on DBA_TAB_MODIFICATIONS toscript_user
; GRANT SELECT on DBA_TABLES toscript_user
; GRANT SELECT on DBA_TAB_PARTITIONS toscript_user
; GRANT SELECT on DBA_MVIEWS toscript_user
; GRANT SELECT on DBA_OBJECTS toscript_user
; GRANT SELECT on DBA_TAB_COLUMNS toscript_user
; GRANT SELECT on DBA_LOG_GROUPS toscript_user
; GRANT SELECT on DBA_LOG_GROUP_COLUMNS toscript_user
; GRANT SELECT on V$ARCHIVE_DEST toscript_user
; GRANT SELECT on DBA_SYS_PRIVS toscript_user
; GRANT SELECT on DBA_TAB_PRIVS toscript_user
; GRANT SELECT on DBA_TYPES toscript_user
; GRANT SELECT on DBA_CONSTRAINTS toscript_user
; GRANT SELECT on V$TRANSACTION toscript_user
; GRANT SELECT on GV$ASM_DISK_STAT toscript_user
; GRANT SELECT on GV$SESSION toscript_user
; GRANT SELECT on GV$SQL toscript_user
; GRANT SELECT on DBA_ENCRYPTED_COLUMNS toscript_user
; GRANT SELECT on DBA_PDBS toscript_user
; GRANT EXECUTE on dbms_utility toscript_user
;
對於 Amazon RDS 數據庫,請設置最低許可,如下所示。
GRANT CREATE SESSION TO
script_user
; exec rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('V_$VERSION','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$SGA','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$INSTANCE','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$DATAGUARD_CONFIG','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$LOG','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TABLESPACES','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_DATA_FILES','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_SEGMENTS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_LOBS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('V_$ARCHIVED_LOG','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_MODIFICATIONS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TABLES','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_PARTITIONS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_MVIEWS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_LOG_GROUPS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_LOG_GROUP_COLUMNS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('V_$ARCHIVE_DEST','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_SYS_PRIVS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_PRIVS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TYPES','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_CONSTRAINTS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('V_$TRANSACTION','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$ASM_DISK_STAT','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$SESSION','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$SQL','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ENCRYPTED_COLUMNS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_PDBS','script_user
','SELECT'); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY','script_user
','EXECUTE');
接下來,您可以找到如何下載、檢閱和執行每個適用於 Oracle 的 SQL *Plus 支援指令碼的說明。您也可以了解如何檢閱輸出並將其上傳至 AWS Support 案例。
awsdms_support_collector_oracle.sql script
下載 awsdms_support_collector_oracle.sql
此指令碼會收集 Oracle 資料庫組態的相關資訊。請記得驗證指令碼上的總和檢查碼,如果總和檢查碼已驗證,請檢閱指令SQL碼中的程式碼,將您不舒服執行的任何程式碼加上註解。您對指令碼的完整性和內容感到滿意之後,就可以執行該指令碼。
若要執行指令碼並將結果上傳至支援案例
-
使用以下 SQL *Plus 命令列,從您的資料庫環境執行指令碼。
SQL> @awsdms_support_collector_oracle.sql
-
在下列提示中,僅輸入您要遷移之其中一個結構描述的名稱。
-
在下列提示中,輸入使用者的名稱 (
script_user
),您已定義為連線至資料庫。 -
在以下提示中,輸入您要檢查的資料天數,或接受預設值。然後,指令碼會收集資料庫中的指定資料。
-
查看此HTML文件並刪除您不舒服共享的任何信息。如果您可以共用,請將檔案上傳至您的 Sup AWS port 案例。HTML如需上傳此檔案的詳細資訊,請參閱使用中的診斷支援指令碼 AWS DMS。