Automatic Workload Repository(AWR)를 사용하여 성능 보고서 생성
Oracle은 성능 데이터 수집과 보고서 생성을 위해 Automatic Workload Repository(AWR)를 사용할 것을 권장합니다. AWR에는 Oracle Database Enterprise Edition과 Diagnostics and Tuning 팩용 라이선스가 필요합니다. AWR을 활성화하려면 CONTROL_MANAGEMENT_PACK_ACCESS
초기화 파라미터를 DIAGNOSTIC
또는 DIAGNOSTIC+TUNING
으로 설정합니다.
RDS에서 AWR 보고서 작업
awrrpt.sql
과 같은 스크립트를 실행하면 AWR 보고서를 생성할 수 있습니다. 이러한 스크립트는 데이터베이스 호스트 서버에 설치됩니다. Amazon RDS에서는 호스트에 직접 액세스할 수 없습니다. 그러나 설치된 다른 Oracle Database에서 SQL 스크립트의 복사본을 가져올 수 있습니다.
SYS.DBMS_WORKLOAD_REPOSITORY
PL/SQL 패키지에서 프로시저를 실행하여 AWR을 사용할 수도 있습니다. 이 패키지를 사용하여 기준 요소 및 스냅샷을 관리하고 ASH 및 AWR 보고서를 표시할 수 있습니다. 예를 들어 텍스트 형식으로 AWR 보고서를 생성하려면 DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_TEXT
프로시저를 실행합니다. 그러나 AWS Management Console에서는 이러한 AWR 보고서에 연결할 수 없습니다.
AWR로 작업할 때 rdsadmin.rdsadmin_diagnostic_util
프로시저를 사용하는 것이 좋습니다. 이러한 프로시저를 사용하여 다음을 생성할 수 있습니다.
-
AWR 보고서
-
활성 세션 기록(ASH) 보고서
-
자동 데이터베이스 진단 모니터(ADDM) 보고서
-
AWR 데이터의 Oracle Data Pump Export 덤프 파일
rdsadmin_diagnostic_util
프로시저는 보고서를 DB 인스턴스 파일 시스템에 저장합니다. 콘솔에서 이러한 보고서에 액세스할 수 있습니다. 또한 rdsadmin.rds_file_util
프로시저를 사용하여 보고서에 액세스할 수 있고, S3 통합 옵션을 사용하여 Amazon S3에 복사된 보고서에 액세스할 수 있습니다. 자세한 내용은 DB 인스턴스 디렉터리의 파일 목록 읽기 및 Amazon S3 통합 단원을 참조하세요.
다음 Amazon RDS for Oracle DB 엔진 버전에서 rdsadmin_diagnostic_util
프로시저를 사용할 수 있습니다.
-
모든 Oracle Database 21c 버전
-
19.0.0.0.ru-2020-04.rur-2020-04.r1 이상의 Oracle Database 19c 버전
복제 시나리오에서 진단 보고서를 사용하는 방법을 설명하는 블로그를 보려면 Amazon RDS for Oracle 읽기 전용 복제본에 대한 AWR 보고서 생성
진단 유틸리티 패키지의 공통 파라미터
rdsadmin_diagnostic_util
패키지로 AWR 및 ADDM을 관리할 때는 일반적으로 다음 파라미터를 사용합니다.
파라미터 | 데이터 형식 | 기본값 | 필수 | 설명 |
---|---|---|---|---|
|
|
— |
예 |
시작 스냅샷의 ID입니다. |
|
|
— |
예 |
종료 스냅샷의 ID입니다. |
|
|
|
아니요 |
보고서를 작성하거나 파일을 내보낼 디렉터리입니다. 기본이 아닌 디렉터리를 지정하는 경우 |
|
|
— |
아니요 |
최대 30자까지 지정할 수 있습니다. 유효한 문자는 태그는 고유할 필요가 없으므로 여러 백업이 동일한 태그를 가질 수 있습니다. 태그를 지정하지 않으면 RMAN은
|
|
|
|
아니요 |
보고서의 형식입니다. 유효 값은 |
|
|
— |
아니요 |
Oracle에 대한 |
rdsadmin_diagnostic_util 패키지로 ASH를 관리할 때는 일반적으로 다음 파라미터를 사용합니다.
파라미터 | 데이터 형식 | 기본값 | 필수 | 설명 |
---|---|---|---|---|
|
|
— |
예 |
ASH 분석의 시작 시간입니다. |
|
|
— |
예 |
ASH 분석의 종료 시간입니다. |
|
|
|
아니요 |
ASH 보고서의 “Top Activity” 섹션에 사용되는 슬롯의 지속 시간(초)입니다. 이 파라미터를 지정하지 않으면 |
|
|
Null |
아니요 |
세션 ID입니다. |
|
|
Null |
아니요 |
SQL ID입니다. |
|
|
Null |
아니요 |
대기 클래스 이름입니다. |
|
|
Null |
아니요 |
서비스 이름 해시입니다. |
|
|
Null |
아니요 |
모듈 이름입니다. |
|
|
Null |
아니요 |
작업 이름입니다. |
|
|
Null |
아니요 |
데이터베이스 세션의 애플리케이션별 ID입니다. |
|
|
Null |
아니요 |
PL/SQL 진입점입니다. |
AWR 보고서 생성
AWR 보고서를 생성하려면 rdsadmin.rdsadmin_diagnostic_util.awr_report
프로시저를 사용합니다.
다음 예에서는 스냅샷 범위 101–106에 대한 AWR 보고서를 생성합니다. 출력 텍스트 파일의 이름은 awrrpt_101_106.txt
입니다. AWS Management Console에서 이 보고서에 액세스할 수 있습니다.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(101,106,'TEXT');
다음 예에서는 스냅샷 범위 63–65에 대한 HTML 보고서를 생성합니다. 출력 HTML 파일의 이름은 awrrpt_63_65.html
입니다. 이 프로시저는 기본이 아닌 데이터베이스 디렉터리 AWR_RPT_DUMP
에 보고서를 작성합니다.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(63,65,'HTML','AWR_RPT_DUMP');
AWR 데이터를 덤프 파일로 추출
AWR 데이터를 덤프 파일로 추출하려면 rdsadmin.rdsadmin_diagnostic_util.awr_extract
프로시저를 사용합니다.
다음 예에서는 스냅샷 범위 101–106을 추출합니다. 출력 덤프 파일의 이름은 awrextract_101_106.dmp
입니다. 콘솔을 통해 이 파일에 액세스할 수 있습니다.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(101,106);
다음 예에서는 스냅샷 범위 63–65를 추출합니다. 출력 덤프 파일의 이름은 awrextract_63_65.dmp
입니다. 이 파일은 기본이 아닌 데이터베이스 디렉터리 AWR_RPT_DUMP
에 저장됩니다.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(63,65,'AWR_RPT_DUMP');
ADDM 보고서 생성
ADDM 보고서를 생성하려면 rdsadmin.rdsadmin_diagnostic_util.addm_report
프로시저를 사용합니다.
다음 예에서는 스냅샷 범위 101–106에 대한 ADDM 보고서를 생성합니다. 출력 텍스트 파일의 이름은 addmrpt_101_106.txt
입니다. 콘솔을 통해 보고서에 액세스할 수 있습니다.
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(101,106);
다음 예에서는 스냅샷 범위 63–65에 대한 ADDM 보고서를 생성합니다. 출력 텍스트 파일의 이름은 addmrpt_63_65.txt
입니다. 이 파일은 기본이 아닌 데이터베이스 디렉터리 ADDM_RPT_DUMP
에 저장됩니다.
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(63,65,'ADDM_RPT_DUMP');
ASH 보고서 생성
ASH 보고서를 생성하려면 rdsadmin.rdsadmin_diagnostic_util.ash_report
프로시저를 사용합니다.
다음 예에서는 14분 전부터 현재 시간까지의 데이터가 포함된 ASH 보고서를 생성합니다. 출력 파일의 이름은 ashrpt
형식을 사용하며, 여기서 begin_time
end_time
.txt
및 begin_time
은 end_time
YYYYMMDDHH24MISS
형식을 사용합니다. 콘솔을 통해 파일에 액세스할 수 있습니다.
BEGIN rdsadmin.rdsadmin_diagnostic_util.ash_report( begin_time => SYSDATE-14/1440, end_time => SYSDATE, report_type => 'TEXT'); END; /
다음 예에서는 2019년 11월 18일 오후 6시 7분부터 2019년 11월 18일 오후 6시 15분까지의 데이터가 포함된 ASH 보고서를 생성합니다. 출력 HTML 보고서의 이름은 ashrpt_20190918180700_20190918181500.html
입니다. 보고서는 기본이 아닌 데이터베이스 디렉터리 AWR_RPT_DUMP
에 저장됩니다.
BEGIN rdsadmin.rdsadmin_diagnostic_util.ash_report( begin_time => TO_DATE('2019-09-18 18:07:00', 'YYYY-MM-DD HH24:MI:SS'), end_time => TO_DATE('2019-09-18 18:15:00', 'YYYY-MM-DD HH24:MI:SS'), report_type => 'html', dump_directory => 'AWR_RPT_DUMP'); END; /
콘솔 또는 CLI에서 AWR 보고서 액세스
AWS Management Console 또는 AWS CLI를 사용하여 AWR 보고서에 액세스하거나 덤프 파일을 내보낼 수 있습니다. 자세한 내용은 데이터베이스 로그 파일 다운로드 단원을 참조하십시오.