本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Oracle 诊断支持脚本
接下来,您可以找到诊断支持脚本,可用于分析 Amazon 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 支持脚本的说明。您还可以了解如何查看输出并将其上传到您的 Amazon Support 案例中。
awsdms_support_collector_oracle.sql 脚本
下载 awsdms_support_collector_oracle.sql
此脚本收集有关您的 Oracle 数据库配置的信息。请记得验证脚本的校验和,如果校验和验证成功,请查看脚本中的 SQL 代码,注释掉任何您不愿意运行的代码。在您确定脚本的完整性和内容没有问题之后,可以运行该脚本。
运行脚本并将结果上传到您的支持案例
-
使用以下 SQL*Plus 命令行在数据库环境中运行脚本。
SQL> @awsdms_support_collector_oracle.sql
-
在随后出现的提示中,输入您要迁移的唯一一个架构的名称。
-
在随后出现的提示中,输入您已定义用于连接数据库的用户的名称(
script_user
)。 -
在随后出现的提示中,输入要检查数据的天数,或者接受默认值。然后,该脚本会从您的数据库中收集指定的数据。
-
您可以查看此 HTML 文件并删除任何不愿意分享的信息。当您觉得 HTML 可以分享时,请将该文件上传到您的 Amazon Support 案例中。有关上传此文件的更多信息,请参阅使用 Amazon DMS 中的诊断支持脚本。