데이터 이관 작업 시 lob 데이터를 고려하지 않고 export 나 load를 수행하게 된다.
많은 테이블에 대해서 이관 작업을 급히 수행해야 되는 경우, 이관 대상의 테이블 컬럼 정보를 확인하지 않고 수행을 하다 보면 lob 데이터가 있는 테이블은 load 시 “문자 짤림" 로그가 남게 된다.
데이터 코드 셋이 잘못되어서 발생하는 경우도 있지만, lob 컬럼이 속한 테이블 경우 추출/적재 시 lob 컬럼에 대한 옵션을 주지 않으면 발생하기도 한다. 또한 load 작업 시 여러 이유에서 실패를 하거나 중단되는 경우 load 작업을 위한 임시 공간이 full 발생하여 load 작업이 실패하게 되는 경우도 발생한다.
데이터 이관 작업 시, lob 데이터 및 대용량 데이터 이관을 고려하여 다음과 같이 export 및 import/load 구문을 사용하는 것이 바람직하지 않을까 싶다.
1. export 구문
lob 컬럼이 존재하는 테이블을 LOBS TO 옵션을 주어 별도의 경로에 데이터를 저장하도록 함
(녹색 글자: 경로 및 파일명을 의미함, {}: shell 변수들을 의미함)
export to export/${TABSCHEMA}.${TABNAME}.ixf of ixf LOBS TO lobs/${TABNAME} modified by lobsinfile messages export/${TABSCHEMA}.${TABNAME}.exp select * from ${TABSCHEMA}.${TABNAME} with ur |
2. load 구문
LOB 데이터의 경로를 LOBS FROM 옵션을 통하여 지정하고, load 작업 시 필요한 임시 공간은 tempfiles path 옵션으로 지정함
load from export/${TABSCHEMA}.${TABNAME}.ixf of ixf LOBS FROM lobs/${TABNAME} modified by lobsinfile messages ${TABSCHEMA}.${TABNAME}.msg tempfiles path tmp replace into ${TABSCHEMA}.${TABNAME} |
'Note' 카테고리의 다른 글
[성능] Actual Section & db2caem (0) | 2014.02.28 |
---|---|
[성능] SQL Optimizer Profile (0) | 2014.02.06 |
[이관] admin_cmd 프로시저를 이용한 이관 자동화 (0) | 2014.01.27 |
[SQL] 오라클 호환성 VARCHAR2에 대한 고찰 (0) | 2014.01.07 |
[개발] db2dclgn (선언부 생성기) (0) | 2013.12.17 |