티스토리 뷰

■에러

IMP-00032: SQL문이 버퍼 길이를 초과했습니다.

 

■현상

이 에러는 현지 서버에서 데이터를 Import를 하기 위해 사내 환경에서 실행했을 때 발생한 에러이다.

미리 작성한 배치파일을 가지고 imp.exe를 실행한 결과 

import시 IMP-00032: SQL statement exceeded buffer length가 발생했다.

 

■원인

IMP-00032 오류는 테이블을 조작하는 DDL, DML이 사용하는 버퍼가 부족하기 때문에 발생한다.

컬럼수가 많은 큰 사이즈의 데이터(LONG/LOB 등) 등을 삽입하고 있는 것이 예상된다.

Import 유틸리티(utility)의 디폴트 버퍼 사이즈는 XXXX 바이트이기 때문에 디폴트 상태로는 버퍼 크기가 작다.

 

■대응

Import 유틸리티(utility)에서 사용할 수 있는 버퍼 크기를 늘린다.

또한 버퍼 크기의 확장은 import의 퍼포먼스도 향상한다.

최저 1048576(1MB) 이상 1MB 단위로 증가시켜 가는 모습을 보면서 최적치를 찾는다.

REDO 로그버퍼의 크기를 참고하면 좋다.

※ 일정 이상 크게 설정을 하더라도 퍼포먼스는 향상되지 않고, 메모리의 낭비가 된다.

 

# IMP BUFFER=1048576 ~
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함