====== 사전관리 ====== ===== 목표 ===== - 사용자에게 영향을 미치기 전에 일반적인 문제를 해결할 수 있도록 데이타베이스를 사전에 모니터링 합니다. - 데이타베이스 진단관리(ADDM : Automatic Database Diagnotic Management) 환경에서 테스트를 진행합니다. ===== 테이블스페이스 생성 ===== - 로컬관리방식의 TBSADDM 테이블스페이스를 생성합니다. - 해당 addm1.dbf 데이타파일은 50M입니다. - ASSM(Automatic Segment Space Management)를 사용하지 않도록 설정합니다. ===== 사용자 생성 ===== - ID/PW가 ADDM/ADDM 인 사용자를 생성합니다. - TBSADDM 이 기본 테이블스페이스이며, TEMP 가 임시 테이블스페이스로 지정합니다. - ADDM 사용자에게 CONNECT,RESOURCE 및 DBA 롤을 부여합니다. ===== 테이블 통계 수집 ===== - 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's recommended solution of automatic segment space management in a locally managed tablespace for the tablespace "TBSADDM" containing the TABLE "ADDM.ADDM" with object id 57202. Alternatively, you can move this object to a different tablespace that is locally managed with automatic segment space management. \\ ADDM 테이블에 ASSM 기능을 사용하도록 권장하고 있다. ===== 테이블스페이스 생성 ===== - ASSM 을 사용하는 테이블스페이스를 생성한다. ===== 재 테스트 ===== - 이전과 다른 상황을 볼 수 있다. - ** 더 이상 스키마 관련 권장 사항이 없다. ** \\ 해결완료. ====== 성능관리 ====== ===== 이슈 ===== - 특정 작업성능이 보통이하로 나타나고 있습니다. - 조사해 본 결과 HR 스키마에 속하는 일부 테이블에 대해 유지관리가 수행되어 발생한 문제라고 합니다. - 적절한 대책을 수립해 봅니다. ===== 유지관리작업 ===== - 유지관리 작업을 수행합니다. ALTER TABLE HR.EMPLOYEES MOVE; - employees 테이블에 몇가지 유지관리 작업을 수행한다. ===== 작업수행 ===== - 특정 쿼리가 정상적인 시간보다 오래걸린다고 합니다. ===== 실행계획확인 ===== - Performance 페이지에서 실행계획을 확인한다. ===== 인덱스확인 ===== - 비정상적인 인덱스를 확인해 본다. SELECT INDEX_NAME, TABLE_NAME, STATUS FROM USER_INDEXES WHERE STATUS <> 'VALID'; ===== Index Reorganize ===== ===== 작업 재수행 ===== - 실행계획을 확인해 본다. ===== instance 작업로드 시뮬레이트 ===== - 현재 SID 값을 확인한다. - CPU와 I/O 로드를 발생하는 작업을 실행한다. - 작업을 확인하려면 특정시간(1~2분)을 대기해야 한다. - 해당 세션을 **Kill Session** 시킨다. ====== 실습스크립트 ====== - http://www.adminschool.net/oracle_docs/seminar/seminar080316.tar.gz