내용 목차
본 장에서는 DBMS_TPR 패키지의 기본 개념과 패키지 내의 프러시저를 사용하는 방법을 설명한다. 보다 자세한 설명은 "Tibero 관리자 안내서"의 "제14장 Tibero Performance Repository"을 참조하기 바란다.
본 절에서는 DBMS_TPR 패키지에서 제공하는 프러시저를 설명한다.
TPR을 위한 스냅샷을 바로 남긴다.
CREATE_SNAPSHOT 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE CREATE_SNAPSHOT();
예제
exec DBMS_TPR.CREATE_SNAPSHOT(); /
TAC 구성에서 모든 인스턴스에서 TPR을 위한 스냅샷을 바로 남긴다. 이때, 기존에 각 스냅샷별로 매겨지던 스냅샷 ID에 추가로, 모든 인스턴스에서 함께 떨어진 스냅샷을 지칭하기 위해 글로벌 스냅샷 ID가 추가로 매겨진다.
CREATE_SNAPSHOT_ALL 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE CREATE_SNAPSHOT_ALL();
예제
exec DBMS_TPR.CREATE_SNAPSHOT_ALL(); /
특정 구간의 성능 분석 리포트(text)를 생성한다.
REPORT_TEXT 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_TEXT ( begin_time IN DATE end_time IN DATE instance_no IN VARCHAR file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_time | 성능 분석 리포트 대상 구간 중 시작 시간이다. |
end_time | 성능 분석 리포트 대상 구간 중 종료 시간이다. |
instance_no | 성능 분석 리포트 대상 인스턴스 번호이다. (기본값: ALL) |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
아래의 예제는 두 개의 인자 모두 DATE 타입이므로 사용 중인 DATE 포맷에 맞게 입력해야 한다.
exec DBMS_TPR.REPORT_TEXT('2011/07/01 12:00:00', '2011/07/02 11:59:59'); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.REPORT_TEXT('2011/07/01 12:00:00', '2011/07/02 11:59:59', file_name=>'tpr.txt'); /
특정 스냅샷 ID 혹은 ID 구간의 성능 분석 리포트(text)를 생성한다.
REPORT_TEXT_ID 프러시저는 input이 특정 ID 혹은 ID 구간 두 종류로 나뉘어지며, 그 세부 내용은 다음과 같다.
특정 ID
프로토타입
PROCEDURE REPORT_TEXT_ID ( one_snap_id IN NUMBER file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
one_snap_id | 성능 분석 리포트 대상 스냅샷 ID이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
exec DBMS_TPR.REPORT_TEXT_ID(5); /
ID 구간
프로토타입
PROCEDURE REPORT_TEXT_ID ( begin_snap_id IN NUMBER end_snap_id IN NUMBER instance_no IN VARCHAR file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_snap_id | 성능 분석 리포트 대상 구간 중 시작 스냅샷 ID이다. |
end_snap_id | 성능 분석 리포트 대상 구간 중 종료 스냅샷 ID이다. |
instance_no | 성능 분석 리포트 대상 인스턴스 번호이다. (기본값: ALL) |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
파라미터 중 instance_no를 입력하지 않으면 기본적으로 모든 인스턴스를 대상으로 하는 리포트를 출력한다.
exec DBMS_TPR.REPORT_TEXT_ID(5, 10); /
파라미터 중 instance_no를 입력하면 해당 인스턴스를 대상으로 하는 리포트를 출력한다.
exec DBMS_TPR.REPORT_TEXT_ID(5, 10, instance=>'2'); /
특정 스냅샷 GID 혹은 GID 구간의 성능 분석 리포트(text)를 생성한다.
REPORT_TEXT_GID 프러시저는 input이 특정 GID 혹은 GID 구간 두 종류로 나뉘어지며, 그 세부 내용은 다음과 같다.
특정 GID
프로토타입
PROCEDURE REPORT_TEXT_GID ( one_snap_gid IN NUMBER file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
one_snap_gid | 성능 분석 리포트 대상 스냅샷의 GID이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
exec DBMS_TPR.REPORT_TEXT_GID(3); /
GID 구간
프로토타입
PROCEDURE REPORT_TEXT_ID ( begin_snap_gid IN NUMBER end_snap_gid IN NUMBER file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_snap_gid | 성능 분석 리포트 대상 구간 중 시작 스냅샷의 GID이다. |
end_snap_gid | 성능 분석 리포트 대상 구간 중 종료 스냅샷의 GID이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
exec DBMS_TPR.REPORT_TEXT_GID(3, 4); /
마지막으로 남긴 스냅샷에 대한 성능 분석 리포트(text)를 생성한다.
REPORT_TEXT_LAST 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_TEXT_LAST ( file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
exec DBMS_TPR.REPORT_TEXT_LAST(); /
특정 요일, 시간대에 해당되는 스냅샷들에 대한 성능 분석 리포트(text)를 생성한다.
REPORT_TEXT_SPECIFIC_TIMES 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_TEXT_SPECIFIC_TIMES( begin_time IN DATE end_time IN DATE begin_hour IN VARCHAR2 end_hour IN VARCHAR2 days IN VARCHAR2 instance_no IN VARCHAR2 file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_time | 성능 분석 리포트 대상 구간 중 시작 날짜와 시간이다. DATE 타입이므로 사용 중인 DATE 포맷에 맞게 입력한다. |
end_time | 성능 분석 리포트 대상 구간 중 종료 날짜와 시간이다. DATE 타입이므로 사용 중인 DATE 포맷에 맞게 입력한다. |
begin_hour | 성능 분석 리포트 대상 구간 중 출력되는 스냅샷 시간대의 시작 시간이다. VARCHAR2 타입으로 'HH24:MM' 포맷을 따라야 한다. (예: 09:00) |
end_hour | 성능 분석 리포트 대상 구간 중 출력되는 스냅샷 시간대의 종료 시간이다. VARCHAR2 타입으로 'HH24:MM' 포맷을 따라야 한다. (예: 18:00) |
days | 성능 분석 리포트 대상 구간 중 리포트 출력할 스냅샷의 요일이다. (기본값: MON,TUE,WED,THU,FRI,SAT,SUN) |
instance_no | 성능 분석 리포트 대상 인스턴스 번호이다. (기본값: ALL) |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
아래의 예제는 1월 1일 00:00부터 2월 1일 23:59:59 사이에 월,수,금 오전 9시부터 오후 6시까지에 해당하는 스냅샷에 대한 리포트 생성을 하는 예제이다.
exec DBMS_TPR.REPORT_TEXT_SPECIFIC_TIMES('2015/01/01 00:00:00', '2015/02/01 23:59:59', '09:00', '18:00', 'MON,WED,FRI'); /
파라미터 중 instance_no를 입력하면 해당 인스턴스를 대상으로 하는 리포트를 출력한다. 입력하지 않는 경우 기본적으로 모든 인스턴스를 대상으로 리포트를 출력한다.
exec DBMS_TPR.REPORT_TEXT_SPECIFIC_TIMES( '2015/01/01 00:00:00', '2015/02/01 23:59:59', '09:00', '18:00', 'MON,WED,FRI', instance_no=>'1'); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.REPORT_TEXT_SPECIFIC_TIMES('2015/01/01 00:00:00', '2015/02/01 23:59:59', '09:00', '18:00', 'MON,WED,FRI', instance_no=>'1', 'workinghours.txt'); /
유저가 지정한 스냅샷들에 대한 성능 분석 리포트(text)를 생성한다.
REPORT_TEXT_MARKED 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_TEXT_MARKED ( file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
지정한 스냅샷에 대한 리포트를 생성해주기 때문에 먼저 출력할 스냅샷을 지정해야 한다.
V$TPR_SNAPSHOT을 조회하면 스냅샷과 관련된 정보 및 marking되었는지 여부를 볼 수 있다.
select * from V$TPR_SNAPSHOT; /
SNAP_ID THREAD# INSTANCE_NUMBER BEGIN_INTERVAL_TIME ---------- ---------- --------------- -------------------------------- END_INTERVAL_TIME SNAP_GID MARKED_FOR_REPORT -------------------------------- ---------- ----------------- 1 0 0 2015/11/26 2015/11/26 N 2 0 0 2015/11/27 2015/11/27 N /
SNAP_ID 2번에 해당하는 리포트를 출력하기 위해 다음과 같은 query를 실행한다.
update V$TPR_SNAPSHOT set MARKED_FOR_REPORT='Y' where SNAP_ID=2; commit; /
V$TPR_SNAPSHOT을 다시 조회하면 원하는 스냅샷이 marking되었음을 확인할 수 있다.
SNAP_ID THREAD# INSTANCE_NUMBER BEGIN_INTERVAL_TIME ---------- ---------- --------------- -------------------------------- END_INTERVAL_TIME SNAP_GID MARKED_FOR_REPORT -------------------------------- ---------- ----------------- 1 0 0 2015/11/26 2015/11/26 N 2 0 0 2015/11/27 2015/11/27 Y /
원하는 스냅샷을 모두 marking하였으면 리포트 출력을 실행시킨다.
exec DBMS_TPR.REPORT_TEXT_MARKED(); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.REPORT_TEXT_MARKED('marked.txt'); /
특정 구간의 성능 분석 리포트(html)를 생성한다.
REPORT_HTML 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_HTML ( begin_time IN DATE end_time IN DATE instance_no IN VARCHAR file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_time | 성능 분석 리포트 대상 구간 중 시작 시간이다. |
end_time | 성능 분석 리포트 대상 구간 중 종료 시간이다. |
instance_no | 성능 분석 리포트 대상 인스턴스 번호이다. (기본값: ALL) |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.html) |
예제
다음의 예제는 두 개의 인자 모두 DATE 타입이므로, 사용 중인 DATE 포맷에 맞게 입력해야 한다.
exec DBMS_TPR.REPORT_HTML('2011/07/01 12:00:00', '2011/07/02 11:59:59'); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.REPORT_HTML('2011/07/01 12:00:00', '2011/07/02 11:59:59', file_name=>'tpr.html'); /
특정 스냅샷 ID 혹은 ID 구간의 성능 분석 리포트(html)를 생성한다.
REPORT_HTML_ID 프러시저는 input이 특정 ID 혹은 ID 구간 두 종류로 나뉘어지며, 그 세부 내용은 다음과 같다.
특정 ID
프로토타입
PROCEDURE REPORT_HTML_ID ( one_snap_id IN NUMBER file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
one_snap_id | 성능 분석 리포트 대상 스냅샷 ID이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.html) |
예제
exec DBMS_TPR.REPORT_HTML_ID(5); /
ID 구간
프로토타입
PROCEDURE REPORT_HTML_ID ( begin_snap_id IN NUMBER end_snap_id IN NUMBER instance_no IN VARCHAR file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_snap_id | 성능 분석 리포트 대상 구간 중 시작 스냅샷 ID이다. |
end_snap_id | 성능 분석 리포트 대상 구간 중 종료 스냅샷 ID이다. |
instance_no | 성능 분석 리포트 대상 인스턴스 번호이다. (기본값: ALL) |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.html) |
예제
파라미터 중 instance_no를 입력하지 않으면 기본적으로 모든 인스턴스를 대상으로 하는 리포트를 출력한다.
exec DBMS_TPR.REPORT_HTML_ID(5, 10); /
파라미터 중 instance_no를 입력하면 해당 인스턴스를 대상으로 하는 리포트를 출력한다.
exec DBMS_TPR.REPORT_HTML_ID(5, 10, instance_no=>'2'); /
특정 스냅샷 GID 혹은 GID 구간의 성능 분석 리포트(html)를 생성한다.
REPORT_HTML_GID 프러시저는 input이 특정 GID 혹은 GID 구간 두 종류로 나뉘어지며, 그 세부 내용은 다음과 같다.
특정 ID
프로토타입
PROCEDURE REPORT_HTML_GID ( one_snap_gid IN NUMBER );
파라미터
파라미터 | 설명 |
---|---|
one_snap_gid | 성능 분석 리포트 대상 스냅샷의 GID이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.html) |
예제
exec DBMS_TPR.REPORT_HTML_GID(3); /
GID 구간
프로토타입
PROCEDURE REPORT_HTML_ID ( begin_snap_gid IN NUMBER end_snap_gid IN NUMBER file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_snap_gid | 성능 분석 리포트 대상 구간 중 시작 스냅샷의 GID이다. |
end_snap_gid | 성능 분석 리포트 대상 구간 중 종료 스냅샷의 GID이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.html) |
예제
exec DBMS_TPR.REPORT_HTML_GID(3, 4); /
마지막으로 남긴 스냅샷에 대한 성능 분석 리포트(html)를 생성한다.
REPORT_HTML_LAST 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_HTML_LAST ( file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.html) |
예제
exec DBMS_TPR.REPORT_HTML_LAST(); /
특정 요일, 시간대에 해당되는 스냅샷들에 대한 성능 분석 리포트(html)를 생성한다.
REPORT_HTML_SPECIFIC_TIMES 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_HTML_SPECIFIC_TIMES ( begin_time IN DATE end_time IN DATE begin_hour IN VARCHAR2 end_hour IN VARCHAR2 days IN VARCHAR2 instance_no IN VARCHAR2 file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_time | 성능 분석 리포트 대상 구간 중 시작 날짜와 시간이다. DATE 타입이므로 사용 중인 DATE 포맷에 맞게 입력해야 한다. |
end_time | 성능 분석 리포트 대상 구간 중 종료 날짜와 시간이다. DATE 타입이므로 사용 중인 DATE 포맷에 맞게 입력해야 한다. |
begin_hour | 성능 분석 리포트 대상 구간 중 출력되는 스냅샷 시간대의 시작 시간이다. VARCHAR2 타입으로 'HH24:MM' 포맷을 따라야 한다. (예: 09:00) |
end_hour | 성능 분석 리포트 대상 구간 중 출력되는 스냅샷 시간대의 종료 시간이다. VARCHAR2 타입으로 'HH24:MM' 포맷을 따라야 한다. (예: 18:00) |
days | 성능 분석 리포트 대상 구간 중 리포트 출력할 스냅샷의 요일이다. (기본값: MON,TUE,WED,THU,FRI,SAT,SUN) |
instance_no | 성능 분석 리포트 대상 인스턴스 번호이다. (기본값: ALL) |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
아래의 예제는 1월 1일 00:00부터 2월 1일 23:59:59 사이에 월,수,금 오전 9시 부터 오후 6시까지에 해당하는 스냅샷에 대한 리포트 생성을 하는 예제이다.
exec DBMS_TPR.REPORT_HTML_SPECIFIC_TIMES( '2015/01/01 00:00:00', '2015/02/01 23:59:59', '09:00', '18:00', 'MON,WED,FRI'); /
파라미터 중 instance_no를 입력하면 해당 인스턴스를 대상으로 하는 리포트를 출력한다. 입력하지 않는 경우 기본적으로 모든 인스턴스를 대상으로 리포트를 출력한다.
exec DBMS_TPR.REPORT_HTML_SPECIFIC_TIMES( '2015/01/01 00:00:00', '2015/02/01 23:59:59', '09:00', '18:00', 'MON,WED,FRI', instance_no=>'1'); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.REPORT_HTML_SPECIFIC_TIMES( '2015/01/01 00:00:00', '2015/02/01 23:59:59', '09:00', '18:00', 'MON,WED,FRI', instance_no=>'1', 'workinghours.txt'); /
유저가 지정한 스냅샷들에 대한 성능 분석 리포트(html)를 생성한다.
REPORT_HTML_MARKED 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE REPORT_HTML_MARKED ( file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: tpr_report.{db_name}.{current_time}.txt) |
예제
지정한 스냅샷에 대한 리포트를 생성해주기 때문에 먼저 출력할 스냅샷을 지정해야한다.
V$TPR_SNAPSHOT을 조회하면 스냅샷과 관련된 정보 및 marking되었는지 여부를 볼 수 있다.
select * from V$TPR_SNAPSHOT; /
SNAP_ID THREAD# INSTANCE_NUMBER BEGIN_INTERVAL_TIME ---------- ---------- --------------- -------------------------------- END_INTERVAL_TIME SNAP_GID MARKED_FOR_REPORT -------------------------------- ---------- ----------------- 1 0 0 2015/11/26 2015/11/26 N 2 0 0 2015/11/27 2015/11/27 N /
SNAP_ID 2번에 해당하는 리포트를 출력하기 위해 다음과 같은 query를 실행한다.
update V$TPR_SNAPSHOT set MARKED_FOR_REPORT='Y' where SNAP_ID=2; commit; /
V$TPR_SNAPSHOT을 다시 조회하면 원하는 스냅샷이 marking되었음을 확인할 수 있다.
SNAP_ID THREAD# INSTANCE_NUMBER BEGIN_INTERVAL_TIME ---------- ---------- --------------- -------------------------------- END_INTERVAL_TIME SNAP_GID MARKED_FOR_REPORT -------------------------------- ---------- ----------------- 1 0 0 2015/11/26 2015/11/26 N 2 0 0 2015/11/27 2015/11/27 Y /
원하는 스냅샷을 모두 marking하였으면 리포트 출력을 실행시킨다.
exec DBMS_TPR.REPORT_HTML_MARKED(); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.REPORT_HTML_MARKED('marked.txt'); /
메모리상에 담겨있는 ASH 샘플들을 _TPR_ACTIVE_SESSION_HISTORY 테이블에 저장한다.
FLUSH_ASH 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE FLUSH_ASH ();
예제
FLUSH_ASH 프러시저를 수행함으로서 메모리상에만 존재하던 ASH 샘플들이 _TPR_ACTIVE_SESSION_HISTORY 테이블상에 저장된다.
exec DBMS_TPR.FLUSH_ASH(); /
특정 구간의 ASH 성능 분석 리포트(text)를 생성한다.
ASH 샘플은 IPARAM(ACTIVE_SESSION_HISTORY)을 Y로 설정했을 때만 남게 되며, ASH 리포트는 이 샘플들의 정보를 취합하여 리포트를 작성한다.
ASH_REPORT_TEXT 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE ASH_REPORT_TEXT ( begin_time IN DATE end_time IN DATE instance_no IN VARCHAR file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
begin_time | 성능 분석 리포트 대상 구간 중 시작 시간이다. |
end_time | 성능 분석 리포트 대상 구간 중 종료 시간이다. |
instance_no | 성능 분석 리포트 대상 인스턴스 번호이다. (기본값: ALL) |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: ash_report.{db_name}.{current_time}.txt) |
예제
아래의 예제는 두 개의 인자 모두 DATE 타입이므로 사용 중인 DATE 포맷에 맞게 입력해야 한다.
exec DBMS_TPR.ASH_REPORT_TEXT( '2015/01/29 21:00:00', '2015/01/29 22:59:59'); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.ASH_REPORT_TEXT( '2015/01/29 21:00:00', '2015/01/29 22:59:59', file_name=>'ash.txt'); /
파라미터 중 instance_no를 입력하면 해당 인스턴스를 대상으로 하는 리포트를 출력한다. 입력하지 않는 경우 기본적으로 모든 인스턴스를 대상으로 리포트를 출력한다.
exec DBMS_TPR.ASH_REPORT_TEXT( '2015/01/29 21:00:00', '2015/01/29 22:59:59', instance_no=>'1'); /
특정 구간에 대한 TPR 스냅샷을 Baseline으로 지정한다. 프러시저 실행시 입력된 시작 시간과 종료 시간 사이에 존재하는 TPR 스냅샷들을 Baseline에 등록한다. Baseline에 등록된 TPR 스냅샷들은 Retention 기간을 넘겨도 파기되지 않고 남아있게 된다. 등록된 Baseline에 관한 내용은 _TPR_BASELINE 테이블을 조회하여 확인할 수 있다.
CREATE_BASELINE 프러시저의 세부 내용은 다음과 같다.
프로토타입
PROCEDURE CREATE_BASELINE ( begin_time IN DATE end_time IN DATE instance_no IN VARCHAR baseline_name IN VARCHAR expiration IN NUMBER );
파라미터
파라미터 | 설명 |
---|---|
begin_time | Baseline에 포함될 TPR 스냅샷 범위의 시작시간이다. |
end_time | Baseline에 포함될 TPR 스냅샷 범위의 종료시간이다. |
instance_no | Baseline 대상 인스턴스 번호이다. (기본값: ALL) |
baseline_name | 만들어질 Baseline의 이름이다. (기본값: BASELINE{BASELINE_ID}) |
expiration | Baseline 자체의 Expiration 기간이다. (기본값: Null, 단위: Hours) |
예제
아래의 예제는 두 개의 인자 모두 DATE 타입이므로 사용 중인 DATE 포맷에 맞게 입력해야 한다.
exec DBMS_TPR.CREATE_BASELINE( '2015/01/29 21:00:00', '2015/01/29 22:59:59'); /
파라미터 중 baseline_name을 지정하면 입력된 이름으로 된 Baseline을 생성한다.
exec DBMS_TPR.CREATE_BASELINE( '2015/01/29 21:00:00', '2015/01/29 22:59:59', baseline_name=>'my_baseline'); /
파라미터 중 instance_no를 입력하면 해당 인스턴스를 대상으로 하는 Baseline을 생성한다. 입력하지 않는 경우 기본적으로 모든 인스턴스를 대상으로 하는 Baseline을 생성한다.
exec DBMS_TPR.CREATE_BASELINE( '2015/01/29 21:00:00', '2015/01/29 22:59:59', instance_no=>'1'); /
파라미터 중 expiration을 입력하면 expiration이 등록된 Baseline이 생성된다. 이러한 Baseline은 생성 후 지정된 expiration만큼의 시간(hrs)이 흐른 뒤 해당 Baseline이 자동 삭제된다. 명시적으로 expiration을 지정하지 않은 경우 사용자가 직접 Baseline을 삭제하기 전까지 Baseline은 삭제되지 않는다.
exec DBMS_TPR.CREATE_BASELINE( '2015/01/29 21:00:00', '2015/01/29 22:59:59', expiration=>168); /
특정 스냅샷 ID 혹은 ID 구간을 Baseline으로 지정한다.
CREATE_BASELINE_ID 프러시저는 input이 특정 ID 혹은 ID 구간 두 종류로 나뉘어지며, 그 세부 내용은 다음과 같다.
특정 ID
프로토타입
PROCEDURE CREATE_BASELINE_ID ( one_snap_id IN NUMBER baseline_name IN VARCHAR expiration IN NUMBER );
파라미터
파라미터 | 설명 |
---|---|
one_snap_id | Baseline에 포함될 TPR 스냅샷 ID이다. |
baseline_name | 만들어질 Baseline의 이름이다. (기본값: BASELINE{BASELINE_ID}) |
expiration | Baseline 자체의 Expiration 기간이다. (기본값: Null, 단위: Hours) |
예제
exec DBMS_TPR.CREATE_BASELINE_ID(30); /
파라미터 중 baseline_name을 지정하면 입력된 이름으로 된 Baseline을 생성한다.
exec DBMS_TPR.CREATE_BASELINE_ID(30, baseline_name=>'my_baseline'); /
파라미터 중 expiration을 입력하면 expiration이 등록된 Baseline이 생성된다. 이러한 Baseline은 생성 후 지정된 expiration만큼의 시간(hrs)이 흐른 뒤 해당 Baseline이 자동 삭제된다. 명시적으로 expiration을 지정하지 않은 경우 사용자가 직접 Baseline을 삭제하기전까지 Baseline은 삭제되지 않는다.
exec DBMS_TPR.CREATE_BASELINE_ID(30, expiration=>168); /
ID 구간
프로토타입
PROCEDURE CREATE_BASELINE_ID ( begin_snap_id IN NUMBER end_snap_id IN NUMBER instance_no IN VARCHAR baseline_name IN VARCHAR expiration IN NUMBER );
파라미터
파라미터 | 설명 |
---|---|
begin_snap_id | Baseline에 포함될 TPR 스냅샷 범위의 시작 ID이다. |
end_snap_id | Baseline에 포함될 TPR 스냅샷 범위의 종료 ID이다. |
instance_no | Baseline 대상 인스턴스 번호이다. (기본값: ALL) |
baseline_name | 만들어질 Baseline의 이름이다. (기본값: BASELINE{BASELINE_ID}) |
expiration | Baseline 자체의 Expiration 기간이다. (기본값: Null, 단위: Hours) |
예제
exec DBMS_TPR.CREATE_BASELINE_ID(30, 50); /
파라미터 중 baseline_name을 지정하면 입력된 이름으로 된 Baseline을 생성한다.
exec DBMS_TPR.CREATE_BASELINE_ID(30, 50, baseline_name=>'my_baseline'); /
파라미터 중 instance_no를 입력하면 해당 인스턴스를 대상으로 하는 Baseline을 생성한다. 입력하지 않는 경우 기본적으로 모든 인스턴스를 대상으로 하는 Baseline을 생성한다.
exec DBMS_TPR.CREATE_BASELINE_ID(30, 50, instance_no=>'1'); /
파라미터 중 expiration을 입력하면 expiration이 등록된 Baseline이 생성된다. 이러한 Baseline은 생성 후 지정된 expiration만큼의 시간(hrs)이 흐른 뒤 해당 Baseline이 자동 삭제된다. 명시적으로 expiration을 지정하지 않은 경우 사용자가 직접 Baseline을 삭제하기전까지 Baseline은 삭제되지 않는다.
exec DBMS_TPR.CREATE_BASELINE_ID(30, 50, expiration=>168); /
지정된 Baseline 이름을 지니는 Baseline을 제거한다.
DROP_BASELINE 프러시저의 세부 내용은 다음과 같다
프로토타입
PROCEDURE DROP_BASELINE ( baseline_name_ IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
baseline_name_ | 삭제할 Baseline의 이름이다. |
예제
exec DBMS_TPR.DROP_BASELINE('my_baseline'); /
지정된 Baseline ID를 지니는 Baseline을 제거한다.
DROP_BASELINE_ID 프러시저의 세부 내용은 다음과 같다
프로토타입
PROCEDURE DROP_BASELINE_ID ( baseline_id_ IN NUMBER );
파라미터
파라미터 | 설명 |
---|---|
baseline_id_ | 삭제할 Baseline의 Baseline ID이다. |
예제
exec DBMS_TPR.DROP_BASELINE_ID(5); /
지정된 Baseline 이름을 지니는 Baseline에 포함된 TPR 스냅샷들에 대한 리포트(text)를 작성한다. 이때 출력되는 리포트는 Baseline에 포함된 TPR 스냅샷에 대해 REPORT_TEXT 프러시저를 수행할 때 출력되는 리포트와 동일하다.
BASELINE_REPORT_TEXT 프러시저의 세부 내용은 다음과 같다
프로토타입
PROCEDURE BASELINE_REPORT_TEXT ( baseline_name_ IN VARCHAR file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
baseline_name_ | 리포트를 출력할 Baseline의 이름이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: baseline_report.{db_name}.{current_time}.txt) |
예제
exec DBMS_TPR.BASELINE_REPORT_TEXT('my_baseline'); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.BASELINE_REPORT_TEXT('my_baseline', file_name=>'baseline.txt'); /
지정된 Baseline ID를 지니는 Baseline에 포함된 TPR 스냅샷들에 대한 리포트(text)를 작성한다. 이때 출력되는 리포트는 Baseline에 포함된 TPR 스냅샷에 대해 REPORT_TEXT 프러시저를 수행할 때 출력되는 리포트와 동일하다.
BASELINE_REPORT_TEXT_ID 프러시저의 세부 내용은 다음과 같다
프로토타입
PROCEDURE BASELINE_REPORT_TEXT_ID ( baseline_id_ IN NUMBER file_name IN VARCHAR );
파라미터
파라미터 | 설명 |
---|---|
baseline_id_ | 리포트를 출력할 Baseline의 ID이다. |
file_name | 만들어질 성능 분석 리포트 파일명이다. (기본값: baseline_report.{db_name}.{current_time}.txt) |
예제
exec DBMS_TPR.BASELINE_REPORT_TEXT_ID(5); /
파라미터 중 file_name을 지정하면 지정된 파일명의 리포트를 출력한다.
exec DBMS_TPR.BASELINE_REPORT_TEXT_ID(5, file_name=>'baseline.txt'); /