Oracle 생 성 Statpack 절차 분석

1. telnet 에서 원 격 데이터베이스 서버 로
CMD > telnet 원 격 데이터베이스 IP
2. 데이터베이스 로 전환 하 는 사용자
DQXXDBS01:/> su - oracle
3. 슈퍼 유저 로 데이터베이스 에 접속
$ sqlplus "/as sysdba"
4. 매개 변 수 를 확인 하고 job (job 로 Statpack Report 의 데 이 터 를 자동 으로 수집 할 수 있 습 니 다)
SQL> show parameter job_queue_processes
5. 이 매개 변 수 는 운영 체제 의 정 보 를 수집 할 수 있다.
SQL> show parameter timed_statistics
6. 표 공간 을 만 들 기 위해 서 는 표 공간의 데이터 파일 을 어디 에 두 는 것 이 좋 습 니까?
 
  
SQL> select file_name from dba_data_files;

7. 어느 디 렉 터 리 의 공간 이 비교적 큰 지 확인 하고 perfstat 표 공간의 데이터 파일 의 위 치 를 확인 합 니 다.
$ df -g
8. 테이블 공간 만 들 기:
 
  
SQL> create tablespace perfstat datafile '/oracle/product/10.2.0/db_1/dbs/perfstat.dbf'size 500M;

-- 표 공간 은 스냅 샷 을 저장 할 때 수집 한 데 이 터 를 저장 하 는 데 쓰 인 다
9. Statspack 에 필요 한 스 크 립 트 만 들 기
SQL> @:/oracle/product/10.2.0/db_1 / rdbms / admin / spcreate. sql -- "/ oracle / produt / 10.2.0 / db 1 / rdbms / admin /" 을 스 크 립 트 디 렉 터 리 로 합 니 다.
이 스 크 립 트 를 실행 한 후 perfstat 를 입력 하 십시오.password、default_tablespace、temporary_tablespace
10. 성공 여 부 를 테스트 하고 데이터 베 이 스 를 만 드 는 스냅 샷
SQL> execute statspack.snap
11. 스냅 샷 생 성
SQL> execute statspack.snap
12. 스냅 샷 두 개 사이 의 시간 대의 Statspack 보고 서 를 가 져 옵 니 다.
SQL> @/oracle/product/10.2.0/db_1/rdbms/admin/spreport.sql
Statspack 보고 서 를 생 성 하 는 시작 점 과 종료 점 을 입력 하 십시오. 예 를 들 어 두 시간 점 의 스냅 샷 이 생 성 되 었 습 니 다. begin 을 입력 하 십시오.snap: 1 과 endsnap: 2, 그리고 스냅 샷 생 성 이름 을 입력 하 십시오 (예: 1. txt)
-- 비고: 보고서 가 설 치 된 위치 가 지정 되 지 않 으 면 이 보고 서 는 sqlplus 를 시작 할 때 있 는 경로 입 니 다.
13. job 로 정시 에 Statspack 의 스냅 샷 을 만들어 데 이 터 를 수집 할 수 있 습 니 다 (기본 값 은 1 시간 에 스냅 샷 을 만 듭 니 다)
SQL> @/oracle/product/10.2.0/db_1/rdbms/admin/spauto.sql
14. 과거 기록 데이터 삭제
select max(snap_id) from stats$snapshot;--stats $snapshot 표 의 해당 데 이 터 를 삭제 하면 다른 표 의 해당 데이터 도 급 격 히 삭 제 됩 니 다.
delete from stats$snapshot where snap_id<3;
sptrunc. sql 이 스 크 립 트 를 실행 하면 이 통계 표 의 정 보 를 직접 삭제 할 수 있 습 니 다.
주의사항:
1. 필요 한 Statspack 을 생 성 한 후 퀘 스 트 를 제거 하고 퀘 스 트 를 확인 하 세 요:
SQL> select job, log_user, priv_user, last_date,next_date, interval from user_jobs;
2. Statspack 스냅 샷 생 성 작업 제거:
SQL> execute dbms_job.remove('41')
3. spcreate. sql 이 스 크 립 트 를 실행 하 는 중 오류 가 발생 하면 spdrop. sql 이 스 크 립 트 를 실행 하여 만 든 대상 을 삭제 한 다음 spcreate. sql 을 실행 할 수 있 습 니 다.
4. spcreate. sql 이 스 크 립 트 를 실행 하면 관련 lis 파일 을 찾 아 설치 정 보 를 볼 수 있 습 니 다 (sqlplus 기본 경로 에서)
기타 관련 스 크 립 트
1. spuexp. par 스 크 립 트 -- statpack 보고서 와 관련 된 데 이 터 를 내 보 낼 수 있 는 dmp 는 다음 과 같 습 니 다.
exp userid=perfstat/fyzh parfile=spuexp.par
메모: spuexp. par 파일 은 sqlplus 에 로그 인 해 야 하 는 현재 경로 입 니 다.로그 인 한 sqlplus 경 로 는 C: \ \ Documents and Settings \ \ Administrator 입 니 다.
그러면 spuexp. par 는 이 디 렉 터 리 에 있어 야 합 니 다. 그렇지 않 으 면 "LRM - 0109: 인자 파일 'puexp. par' 를 열 수 없습니다" 라 는 알림 을 표시 합 니 다.
2. sprepsql. sql 스 크 립 트 -- 주어진 sql hash 값 에 따라 sql 보고 서 를 생 성 하 는 데 사용 합 니 다.
STATSPACK 의 수집 문턱 조정
Statspack 에는 두 가지 종류의 수집 옵션 이 있 습 니 다.
단계 (level): 데이터 수집 형식 제어
문턱 (threshold): 수 집 된 데이터 의 한도 값 을 설정 합 니 다.
1. 등급 (level)
Statspack 은 모두 세 가지 스냅 샷 단계 가 있 습 니 다. 기본 값 은 5 입 니 다.
a. level 0: 일반 성능 통계. 대기 이벤트, 시스템 이벤트, 시스템 통계, 스크롤 백 통계, 줄 캐 시, SGA, 세 션, 잠 금, 버퍼 통계 등 을 포함한다.
b. level 5: SQL 문 구 를 추가 합 니 다. level 0 의 모든 내용 을 포함 하 는 동시에 SQL 문 구 를 수집 하고 결 과 를 stats $sql 에 기록 합 니 다.요약 중.
c. level 10: 하위 잠 금 저장 통 계 를 증가 합 니 다. level 5 의 모든 내용 을 포함 합 니 다. 또한 추 가 된 하위 잠 금 저장 소 를 stats $lathc 에 저장 합 니 다.children 중. 이 단 계 를 사용 할 때 신중 해 야 합 니 다. Oracle support 의 지도 아래 진행 하 는 것 을 권장 합 니 다.
statspack 패 키 지 를 통 해 부족 한 단계 설정 을 수정 할 수 있 습 니 다.
SQL> execute statspack.snap(i_snap_level=>0,i_modify_parameter=>'true');
만약 당신 이 이번 수집 단 계 를 바 꾸 고 싶 을 뿐 이 라면 i 를 무시 할 수 있 습 니 다.modify_파라미터 파라미터.
SQL> execute statspack.snap(i_snap_level=>0);
2. 스냅숏 문턱
스냅 샷 문턱 은 stats $sql 에 만 적 용 됩 니 다.summary 표 에서 가 져 온 SQL 문장 입 니 다.
모든 스냅 샷 은 많은 데 이 터 를 수집 하기 때문에 줄 마다 스냅 샷 을 가 져 올 때 데이터베이스 에 있 는 SQL 문 구 를 대표 하기 때문에 stats $sqlsummary 는 곧 Statspack 에서 가장 큰 시계 가 될 것 이다.
문턱 은 stats $statspack 에 저 장 됩 니 다.parameter 표 중:
executions_th 이것 은 SQL 문장의 실행 수량 입 니 다 (기본 값 은 100 입 니 다)
disk_reads_tn 이것 은 SQL 문 구 를 실행 하 는 디스크 읽 기 수량 입 니 다 (기본 값 은 1000)
parse_calls_th 이것 은 SQL 문 구 를 실행 하 는 분석 호출 수량 입 니 다 (기본 값 은 1000)
buffer_gets_th 이것 은 SQL 문 구 를 실행 하 는 버퍼 에서 가 져 온 수량 입 니 다 (기본 값 은 10000 입 니 다)
모든 문턱 값 이 상기 매개 변 수 를 초과 하면 기록 이 생 길 것 이다.
statspack. modify 호출 을 통 해statspack_parameter 함수 가 문턱 의 기본 값 을 변경 합 니 다:
 
  
SQL>execute statspack.modify_statspack_parameter(i_buffer_gets_th=>100000,i_disk_reads_th=>100000);

좋은 웹페이지 즐겨찾기