안녕하세요. 강정식입니다.
이제 코어스터디도 얼마 안있으면 시작을 하니 그 전에 SQL-PLUS에서 모니터링 하는 스크립트를
공유해 드립니다.
I. 스크립트 세팅 방법
1. ’10g Script.zip’ 파일 압축을 푼다.
2. 해당 경로의 아이콘을 복사하여 하단의 작업표시줄에 복사한다.
3. 아래 그럼처럼 인스턴스 개수에 맞게 여러개를 복사하여 사용하여도 좋다.
4. 이제 작업표시절에 있는 아이콘의 속성을 클릭하여 아래 그림의 내용을 참조하여 넣어준다.
1) ’대상(T)’에 넣는 내용은 ’Sql-Plus’ 아이콘 클릭시 해당 인스턴스로 바로 접속하도록
하기 위한 작업이다. 넣는 방법은 ’ID/Password@InstanceName’이다.(Ex : scott/tiger@db1)
2) ’시작 위치(S)’에 넣는 내용은 해당 스크립트를 불러오기 위해 스크립트가 저장된 폴더를
지정하기 위한 작업이다.
5. 접속 테스트
1) 이제 위에서 설정한 아이콘을 클릭하여 접속해본다.
2) 제대로 접속이 되었다면 아래처럼 접속구문이 떠야 한다.
II. 스크립트 사용 방법
1. 압축파일에 들어있는 스크립트는 약 200여가지가 있다.
이에 대해 간략한 설명을 보려면 엑셀 첨부파일을 참고하기 바란다.
2. 스크립트의 대부분은 조회용이지만 일부 트랜잭션도 일으키는 스크립트가 있으니
주의해서 사용해야 한다. 다만 엑셀파일 안의 내용 중 노란색으로 칠해진것은
조회용이고, 현재 필자가 가장 많이 사용하는 스크립트들이다.
3. 사용 방법
1) 사용방법은 Sql-Plus에서 폴더 안의 스크립트 이름에 @를 붙힌 다음 엔터를 누르면 된다.
2) 예제
- @s : 현재 Active 세션들을 보여준다.
4. 유용한 스크립트 추천
1) ddltrg2 : 특정 Object의 변경이력을 살펴볼 수 있다.
장점은 특정 Index 또는 Table의 변경이 일어났을 때 어떤 유저가 하였는지
조회할 수 있다.
2) deadtrx : Dead Transaction이 어떤게 걸려있는지 살펴볼 수 있다.
3) liblock : Library Cache Lock들에 대해 Tree 구조로 살펴볼 수 있다.
4) lock : Lock이 걸린 현황을 Hold, Wait 구조로 살펴볼 수 있다.
장점은 RAC 환경에서 단일 노드로 접속하여 전체 노드를 확인할 수 있다.
5) locktab : 특정 테이블을 입력하면 그 테이블의 Lock 현황을 조회할 수 있다.
6) obj : 특정 Object의 Status를 확인할 수 있다.
7) parallel : Parallel 힌트를 사용하여 수행할 경우 Parallel의 전체 현황을 파악할 수 있다.
8) rollback : Undo를 사용하는 세션을 모니터링 할 수 있다.
9) s : 현재 Active중인 세션을 볼 수 있다.
10) ses : 특정 세션의 디테일한 정보를 볼 수 있다.
11) sql : 특정 세션의 sid를 가지고 Runtime Explain과 Bind Variable을 볼 수 있다.
12) stat : 특정 테이블의 통계정보 및 인덱스를 한눈에 볼 수 있다.
13) temp : Temporary Tablespace 사용현황을 조회할 수 있다.
14) traceon : 현재 Running중인 세션의 sid값으로 트레이스를 활성화 할 수 있다.
15) traceoff : 현재 Running중인 세션의 sid값으로 트레이스를 비활성화 할 수 있다.
휴.. 내용 정리하는게 생각보다 힘드네여.
여기까지 내용을 보시면 스크립트 사용하시는데 어려움은 없을거라고 생각됩니다.
또한 이 스크립트에 관심이 있으신 대용량 멤버들이나 자바 멤버분들도 사용 가능하시니
필요하시면 참고해 주시기 바랍니다. 다만 배포는 안됩니다. ^^;
내일 가혜 세미나에서 Lock에 대해서도 하니 미리 여기 스크립트 중 Lock 관련 스크립트를
공부하여 참가하셔도 좋을 것 같습니다.
그럼 보시고 궁금하신 점 있으시면 리플 달아주시기 바랍니다.
내일 뵙겠습니다...