View a markdown version of this page

Oracle 诊断支持脚本 - Amazon Database Migration Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Oracle 诊断支持脚本

接下来,您可以在 Amazon DMS 迁移配置中找到可用于分析本地数据库或 Amazon RDS for Oracle 数据库的诊断支持脚本。这些脚本可以与源端点或目标端点一起使用。这些脚本均编写为在 SQL*Plus 命令行实用程序中运行。有关使用此实用程序的更多信息,请参阅 Oracle 文档中的使用 SQL 命令行

在运行脚本之前,请确保您使用的用户账户具有访问 Oracle 数据库所需的权限。所示权限设置假设用户按如下方式创建。

CREATE USER script_user IDENTIFIED BY password;

对于本地数据库,请按如下所示为 script_user 设置最低权限。

GRANT CREATE SESSION TO script_user; GRANT SELECT on V$DATABASE to script_user; GRANT SELECT on V$VERSION to script_user; GRANT SELECT on GV$SGA to script_user; GRANT SELECT on GV$INSTANCE to script_user; GRANT SELECT on GV$DATAGUARD_CONFIG to script_user; GRANT SELECT on GV$LOG to script_user; GRANT SELECT on DBA_TABLESPACES to script_user; GRANT SELECT on DBA_DATA_FILES to script_user; GRANT SELECT on DBA_SEGMENTS to script_user; GRANT SELECT on DBA_LOBS to script_user; GRANT SELECT on V$ARCHIVED_LOG to script_user; GRANT SELECT on DBA_TAB_MODIFICATIONS to script_user; GRANT SELECT on DBA_TABLES to script_user; GRANT SELECT on DBA_TAB_PARTITIONS to script_user; GRANT SELECT on DBA_MVIEWS to script_user; GRANT SELECT on DBA_OBJECTS to script_user; GRANT SELECT on DBA_TAB_COLUMNS to script_user; GRANT SELECT on DBA_LOG_GROUPS to script_user; GRANT SELECT on DBA_LOG_GROUP_COLUMNS to script_user; GRANT SELECT on V$ARCHIVE_DEST to script_user; GRANT SELECT on DBA_SYS_PRIVS to script_user; GRANT SELECT on DBA_TAB_PRIVS to script_user; GRANT SELECT on DBA_TYPES to script_user; GRANT SELECT on DBA_CONSTRAINTS to script_user; GRANT SELECT on V$TRANSACTION to script_user; GRANT SELECT on GV$ASM_DISK_STAT to script_user; GRANT SELECT on GV$SESSION to script_user; GRANT SELECT on GV$SQL to script_user; GRANT SELECT on DBA_ENCRYPTED_COLUMNS to script_user; GRANT SELECT on DBA_PDBS to script_user; GRANT EXECUTE on dbms_utility to script_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 代码,注释掉任何您不愿意运行的代码。在您确定脚本的完整性和内容没有问题之后,可以运行该脚本。

运行脚本并将结果上传到您的支持案例
  1. 使用以下 SQL*Plus 命令行在数据库环境中运行脚本。

    SQL> @awsdms_support_collector_oracle.sql
  2. 在随后出现的提示中,输入您要迁移的唯一一个架构的名称。

  3. 在随后出现的提示中,输入您已定义用于连接数据库的用户的名称(script_user)。

  4. 在随后出现的提示中,输入要检查数据的天数,或者接受默认值。然后,该脚本会从您的数据库中收集指定的数据。

  5. 您可以查看此 HTML 文件并删除任何不愿意分享的信息。当您可以共享 HTML 时,请将该文件上传到您的 Su Amazon pport 案例中。有关上传此文件的更多信息,请参阅在中使用诊断支持脚本 Amazon DMS