AWR 기본
Oracle10g부터 추가된 AWR(Automatic Workload Repository) 기본 사용법이다.
내 이 세상 도처에서 쉴 곳을 찾아보았으나, 마침내 찾아낸, 컴퓨터가 있는 구석방보다 나은 곳은 없더라.
Oracle10g부터 추가된 AWR(Automatic Workload Repository) 기본 사용법이다.
dbms_metadata
패키지를 이용해 DDL 추출하는 방법이다. 특정 스키마의 모든 DB 객체에 대한 DDL을 추출하려면 export를 사용하는 것이 더 편하다. (특정 스키마의 DDL 추출 참조)
인덱스 용량을 산정하기 위한 방법인데 조금 복잡하다.
오라클의 다이나믹 퍼포먼스 뷰인 v$session
과 v$process
, v$transaction
등 관련 테이블간의 연관 관계를 정리해봤다. 요즘은 Orange나 Toad와 같은 도구를 사용하기 때문에, 이런 테이블을 직접 조회할 일이 많지는 않지만, 가끔씩 아쉬울 때도 있다.
테이블 용량을 산정하기 위한 방법인데 조금 복잡하다. 어차피 추정이므로 간단하게 (평균 row 크기) × (데이터 건수) × 1.3 정도로 해도 되지 않을까 싶다.
다음과 같이 하면 exp/imp 도구를 사용해 특정 스키마의 DDL을 추출할 수 있다.
Oracle에서는 다음과 같이 connect by
절을 사용해 원하는 만큼 row를 만들어낼 수 있다.
오라클에 factorial
함수가 없지만 다음과 같이 구할 수 있다.
개발DB와 테스트DB, 또는 테스트DB와 운영DB간 인덱스를 비교할 때는 다음 쿼리를 사용할 수 있다.
프로젝트를 하다보면 개발DB와 테스트DB 또는 테스트DB와 운영DB간 스키마를 비교해 차이점이 없는지 확인할 일이 많다. 다음은 테이블과 컬럼을 비교하는 스크립트다.