문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
seminar:10g:performance [2008/03/15 23:58] starlits 새로 만듬 |
seminar:10g:performance [2008/03/17 12:18] starlits |
||
---|---|---|---|
줄 1: | 줄 1: | ||
- | ====== | + | ====== 사전관리 ====== |
===== 목표 ===== | ===== 목표 ===== | ||
줄 10: | 줄 10: | ||
- ASSM(Automatic Segment Space Management)를 사용하지 않도록 설정합니다. | - ASSM(Automatic Segment Space Management)를 사용하지 않도록 설정합니다. | ||
+ | ===== 사용자 생성 ===== | ||
+ | - ID/PW가 ADDM/ADDM 인 사용자를 생성합니다. | ||
+ | - TBSADDM 이 기본 테이블스페이스이며, | ||
+ | - ADDM 사용자에게 CONNECT, | ||
+ | |||
+ | ===== 테이블 통계 수집 ===== | ||
+ | - DBMS_ADVISOR 패키지를 이용하여 데이타베이스 작업시간을 30분으로 설정합니다. | ||
+ | - ADDM 사용자로 ADDM 테이블을 삭제 -> 생성 후 이 테이블의 통계를 수집합니다. | ||
+ | - AWR(Automatic Workload Repository)에 스냅샷을 생성합니다. | ||
+ | |||
+ | ===== Performance ===== | ||
+ | - EM의 Performance 페이지를 연다. | ||
+ | - 15초마다 refresh 하여 실시간 성능 데이타를 확인한다. | ||
+ | - **Average Active Sessions** 그래프에 스파이크가 표시되면, | ||
+ | |||
+ | |||
+ | ===== Performance Analysis ===== | ||
+ | - Database Home 페이지로 이동한 후 아래쪽의 **Advisor Central**을 누릅니다. | ||
+ | - ADDM 을 선택한 후, **View Result**를 누른다. | ||
+ | - ADDM 상의 Recommendations 에서 아래의 내용을 확인한다. < | ||
+ | Consider using ORACLE' | ||
+ | in a locally managed tablespace for the tablespace " | ||
+ | Alternatively, | ||
+ | that is locally managed with automatic segment space management. | ||
+ | </ | ||
+ | |||
+ | ===== 테이블스페이스 생성 ===== | ||
+ | - ASSM 을 사용하는 테이블스페이스를 생성한다. | ||
+ | |||
+ | ===== 재 테스트 ===== | ||
+ | - 이전과 다른 상황을 볼 수 있다. | ||
+ | - ** 더 이상 스키마 관련 권장 사항이 없다. ** \\ 해결완료. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== 성능관리 ====== | ||
+ | |||
+ | ===== 이슈 ===== | ||
+ | - 특정 작업성능이 보통이하로 나타나고 있습니다. | ||
+ | - 조사해 본 결과 HR 스키마에 속하는 일부 테이블에 대해 유지관리가 수행되어 발생한 문제라고 합니다. | ||
+ | - 적절한 대책을 수립해 봅니다. | ||
+ | |||
+ | |||
+ | ===== 유지관리작업 ===== | ||
+ | - 유지관리 작업을 수행합니다. <code sql> | ||
+ | ALTER TABLE HR.EMPLOYEES MOVE; | ||
+ | </ | ||
+ | - employees 테이블에 몇가지 유지관리 작업을 수행한다. | ||
+ | |||
+ | ===== 작업수행 ===== | ||
+ | - 특정 쿼리가 정상적인 시간보다 오래걸린다고 합니다. | ||
+ | |||
+ | ===== 실행계획확인 ===== | ||
+ | - Performance 페이지에서 실행계획을 확인한다. | ||
+ | |||
+ | ===== 인덱스확인 ===== | ||
+ | - 비정상적인 인덱스를 확인해 본다. <code sql> | ||
+ | SELECT INDEX_NAME, TABLE_NAME, STATUS | ||
+ | FROM USER_INDEXES WHERE STATUS <> ' | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Index Reorganize ===== | ||
+ | |||
+ | ===== 작업 재수행 ===== | ||
+ | - 실행계획을 확인해 본다. | ||
+ | |||
+ | |||
+ | ===== instance 작업로드 시뮬레이트 ===== | ||
+ | - 현재 SID 값을 확인한다. | ||
+ | - CPU와 I/O 로드를 발생하는 작업을 실행한다. | ||
+ | - 작업을 확인하려면 특정시간(1~2분)을 대기해야 한다. | ||
+ | - 해당 세션을 **Kill Session** 시킨다. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== 실습스크립트 ====== | ||
+ | - http:// | ||