문서유형ㅣ기술정보
분야ㅣ 튜닝
적용제품버전ㅣ 6FS06, 6FS07, 6FS07PS, 7FS02, 7FS02PS
문서번호ㅣ TTUTI003
개요
이전에 적용했었던 테이블 통계 정보에 대한 복구 방법을 설명합니다.
방법
통계 정보 히스토리 테이블 정보 (기본 리텐션 31일) : SYS._STAT_TBL_HISTORY
통계 정보 히스토리 조회 쿼리 (테이블 단위, ANALYZETIME 컬럼으로 통계 수집 된 시점 확인)
SELECT DU.USERNAME , DO.OBJECT_NAME , SH.* FROM DBA_OBJECTS DO , DBA_USERS DU , SYS._STAT_TBL_HISTORY SH WHERE DO.OBJECT_ID = SH.OBJ_ID AND DO.OWNER = DU.USERNAME AND DO.OBJECT_TYPE = 'TABLE' AND DU.USERNAME = '<owner>' AND DO.OBJECT_NAME = '<table_name>' ORDER BY TIMESTAMP ;
테이블의 통계 정보를 지정된 시간(as_of_timestamp)으로 복원하는 방법
통계 복원 확인: DBA_TABLES, DBA_INDEXES 테이블의 LAST_ANALYZED 일자와 _STAT_TBL_HISTORY의 ANALYZETIME 통계 시점 일자와 일치하는지 확인합니다.
EXEC DBMS_STATS.RESTORE_TABLE_STATS('<owner>', '<table_name>', TO_TIMESTAMP('2023/12/11 09:49:04', 'YYYY/MM/DD HH24:MI:SS'), force=>TRUE);
주의실행 시, 통계가 수집 되었을 때 통계 수집 된 시점보다 1초 크게 선택해야 적용됩니다.