1. 문제상황
임시 테이블 생성을 위해 LOB 컬럼에 NOLOGGING 옵션을 적용하려고 했는데,
아래와 같은 오류가 발생했다.
ORA-22853 LOB 저장 옵션 지정이 부적당합니다.
invalid LOB storage option specification
CREATE TABLE에서도 마찬가지였고, ALTER TABLE에서도 마찬가지였다.
2. 해결방법
정답은 오라클 공식자료에 있었다.
오류 원인은 NOCACHE를 같이 명시해주지 않아서였다.
LOB의 경우 NOLOGGING / LOGGING 옵션 적용시 CACHE 여부를 같이 적어줘야한다.
이때, CACHE NOLOGGING 옵션은 Basicfiles 에서는 불가능하다.
즉, NOLOGGING을 적용하고 싶을때는 NOCACHE NOLOGGING으로 명시해줘야한다.
* 예시 SQL
-- 1. 잘못된 예시 (NOCACHE가 생략됨, ORA-22853 발생)
ALTER TABLE TABLE_A MODIFY LOB(COLUMN_NAME) (NOLOGGING);
-- 2. 적절한 예시 (NOCACHE NOLOGGING을 같이 명시)
ALTER TABLE TABLE_A MODIFY LOB(COLUMN_NAME) (NOCACHE NOLOGGING);
출처 : https://docs.oracle.com/cd/E11882_01/server.112/e41084/clauses005.htm
반응형
'데이터 사이언스 DataScience > Data Base 데이터베이스' 카테고리의 다른 글
[Oracle] 데이터베이스 인수인계 체크리스트 (0) | 2021.11.23 |
---|---|
[Oracle] 테이블스페이스 Drop 전 체크 쿼리 (0) | 2021.11.23 |
[Oracle] LOB 테이블에 Parallel DML 적용이 안된다 (0) | 2021.11.15 |
[Oracle] 데이터 펌프(Data Pump)로 테이블 백업하기 (0) | 2021.06.29 |
[Oracle] 테이블스페이스가 충분한데 INSERT가 안된다 (ORA-01654) (2) | 2021.03.03 |