본문 바로가기
네다야 의 밥벌이/Oracle

[Oracle] 오라클 테이블 통계정보 갱신.

by Nedayah 2021. 1. 14.

오라클 Query Tuning을 하다가

INDEX도 잘 생성되어 있고

실제로 Query 실행하면
INDEX를 잘 타는데도 불구하고

대형테이블이라 결과가 안나오는 상황이 생겼다.

 

한참 고민하다가 통계갱신을 해보았더니
10% 이내로 수행시간이 줄어들었다.

 

그렇다면 오라클 테이블의 통계정보는
어떻게 갱신할 수 있나?

나는 Orange 라는 Tool을 사용하는데
Orange 상에서도 갱신이 가능하다.

테이블을 선택한 후 오른쪽 클릭해서 Anayze를 누르면 간단하게 할 수 있다.

 

 

Orange for ORACLE 

 

 

하지만 조금 더 전문가처럼 Script로 실행하려면
아래 구문을 실행하면 된다.

 

EXEC DBMS_STATS.GATHER_TABLE_STATS('스키마명', '테이블명', degree=>8, granularity=>'ALL');

/* 
degree : parallel option 
granularity : Partition 및 기타 통계수집 option
*/ 

 

공식 Oracle Online Document 는 아래 링크 참고하면 될 것 같다.

 

http://docs.oracle.com/database/121/ARPLS/d_stats.htm#ARPLS059

DBMS_STATS

With the DBMS_STATS package you can view and modify optimizer statistics gathered for database objects. Using DBMS_STATS This section contains topics which relate to using the DBMS_STATS package. Overview The Oracle RDBMS allows you to collect statistics o

docs.oracle.com

 

'네다야 의 밥벌이 > Oracle' 카테고리의 다른 글

[Oracle] SPM (SQL Plan Management)  (0) 2022.04.12