DBAtlas · 데이터베이스 운영 아틀라스

ORA-38029: object statistics are locked

Oracle

의미

테이블(또는 스키마)의 옵티마이저 통계가 잠겨 있어 통계 수집/삭제가 거부되었다. 잠긴 통계는 DBMS_STATS로 다시 계산되지 않도록 보호된다.

원인

이전에 DBMS_STATS.LOCK_TABLE_STATS 또는 LOCK_SCHEMA_STATS가 호출되었거나(예: 통계를 고정하기 위해), Data Pump import(특히 CONTENT=METADATA_ONLY)가 의도치 않게 통계를 잠긴 상태로 남겼다. 잠긴 상태에서 GATHER_TABLE_STATS를 실행하면 이 오류가 발생한다.

해결 방법

통계 잠금 해제: EXEC DBMS_STATS.UNLOCK_TABLE_STATS('APP_SCHEMA','MY_TABLE'); 또는 스키마 수준에서 DBMS_STATS.UNLOCK_SCHEMA_STATS('APP_SCHEMA'); 잠금을 해제하지 않고 수집하려면 FORCE=>TRUE를 사용한다: EXEC DBMS_STATS.GATHER_TABLE_STATS('APP_SCHEMA','MY_TABLE', force=>TRUE); 잠금 상태 확인: SELECT table_name, stattype_locked FROM dba_tab_statistics WHERE stattype_locked IS NOT NULL;

DBAtlas에서 열기 →

같은 데이터베이스의 다른 항목