기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Oracle 진단 지원 스크립트
아래에는 AWS DMS 마이그레이션 구성에서 온프레미스 또는 Amazon RDS for Oracle 데이터베이스를 분석하는 데 사용 가능한 진단 지원 스크립트가 나와 있습니다. 이러한 스크립트는 소스 또는 대상 엔드포인트에서 작동합니다. 스크립트는 모두 SQL*Plus 명령줄 유틸리티에서 실행하도록 작성되었습니다. 이 유틸리티 사용에 대한 자세한 내용은 Oracle 설명서의 A Using SQL Command Line
스크립트를 실행하기 전에, 사용하려는 사용자 계정에 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 스크립트
awsdms_support_collector_oracle.sql
이 스크립트는 Oracle 데이터베이스 구성에 대한 정보를 수집합니다. 스크립트의 체크섬을 반드시 확인하고, 체크섬이 확인되면 스크립트의 SQL 코드를 검토하여 실행하기에 부적합한 코드는 모두 주석 처리합니다. 스크립트의 무결성 및 내용에 만족한다면 스크립트를 실행해도 됩니다.
스크립트를 실행하고 결과를 지원 사례에 업로드하려면
-
아래의 SQL*Plus 명령줄을 사용하여 데이터베이스 환경에서 스크립트를 실행합니다.
SQL> @awsdms_support_collector_oracle.sql
-
다음에 나오는 프롬프트에서 마이그레이션할 스키마 중 하나의 이름만 입력합니다.
-
다음에 나오는 프롬프트에서 데이터베이스에 연결하기 위해 정의한 사용자 이름(
script_user
)을 입력합니다. -
다음에 나오는 프롬프트에서 검사할 데이터의 일수를 입력하거나, 기본값을 수락합니다. 이렇게 하면 스크립트가 데이터베이스에서 지정된 데이터를 수집합니다.
-
이 HTML 파일을 검토하고, 공유하기에 부적합한 정보는 모두 제거합니다. HTML을 공유해도 괜찮다면 AWS Support 사례에 파일을 업로드합니다. 이 파일 업로드에 대한 자세한 내용은 AWS DMS에서 진단 지원 스크립트 작업 섹션을 참조하세요.