export 오류 0 0 5,370

by 리미루 [Oracle 백업/복구] 백업 복구 export expdp import ora-39006 [2015.07.21 16:33:16]


오라클 서버 변경으로 인해 기존 서버(10g)에서 변경 서버(11g)로 백업후 복원을 진행하려고 합니다.

일단 테스트로 테이블 하나만 진행해보니

방법1. export실행

C:\Documents and Settings\Administrator>exp 계정/비번 tables=(테이블1,테이블2) file=d:\exp_test.dmp

Export: Release 10.2.0.4.0 - Production on 수 7월 22 17:02:27 2015

Copyright (c) 1982, 2007, Oracle.  All rights reserved.


다음에 접속됨: Oracle Database 10g Release 10.2.0.4.0 - Production
KO16MSWIN949 문자 설정과 UTF8 NCHAR 문자 설정에서 엑스포트가 종료되었습니다
서버는 KO16KSC5601 문자 집합을 사용합니다 (문자집합 변환이 가능합니다)

지정된 테이블을 엑스포트하려고 합니다 via 규정 경로...
. . 테이블                      테이블1(를)을 엑스포트 중
EXP-00008: ORACLE 오류 6552이(가) 발생했습니다.
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-553: 알 수 없는 문자 집합 이름입니다
. . 테이블                    테이블2(를)을 엑스포트 중
EXP-00008: ORACLE 오류 1003이(가) 발생했습니다.
ORA-01003: 해석된 문이 없습니다
엑스포트가 경고를 보이며 성공적으로 끝났습니다

 

방법2. expdp 실행

Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.

C:\Documents and Settings\Administrator>expdp 계정/비번 DIRECTORY=dpump_dir
2 tables=테이블 DUMPFILE=test_201507.dmp logfile=test_201
507.log

Export: Release 10.2.0.4.0 - Production on 수요일, 22 7월, 2015 16:26:13

Copyright (c) 2003, 2007, Oracle.  All rights reserved.

접속 대상: Oracle Database 10g Release 10.2.0.4.0 - Production
ORA-39006: 내부 오류
ORA-39065: DISPATCH에 예상치 않은 마스터 프로세스 예외 사항 발생
ORA-00600: 내부 오류 코드, 인수 : [kokle_lob2lob13:input mismatch], [1], [], [],
 [], [], [], []

ORA-39097: 데이터 펌프 작업에서 예상치 않은 오류 -600 발생

 

위와 같은 오류가 발생합니다. 게시판을 검색해 보니 캐릭터셋이 중복등록(?)된 문제라고 하여 확인해 보니 아래와 같습니다.

select distinct(nls_charset_name(charsetid)) CHARACTERSET,
decode(type#, 1, decode(charsetform, 1, 'VARCHAR2', 2, 'NVARCHAR2','UNKOWN'),
9, decode(charsetform, 1, 'VARCHAR', 2, 'NCHAR VARYING', 'UNKOWN'),
96, decode(charsetform, 1, 'CHAR', 2, 'NCHAR', 'UNKOWN'),
112, decode(charsetform, 1, 'CLOB', 2, 'NCLOB', 'UNKOWN')) TYPES_USED_IN
from sys.col$ where charsetform in (1,2) and type# in (1, 9, 96, 112)
order by types_used_in;
기존 서버(10g) 변경 서버(11g)
AL32UTF8 CHAR KO16KSC5601 CHAR
KO16KSC5601 CHAR KO16KSC5601 CLOB
AL32UTF8 CLOB AL16UTF16 NCHAR
UTF8 NCHAR AL16UTF16 NCLOB
UTF8 NCLOB AL16UTF16 NVARCHAR2
AL16UTF16 NVARCHAR2 KO16KSC5601 VARCHAR2
UTF8 NVARCHAR2    
AL32UTF8 VARCHAR2    
KO16KSC5601 VARCHAR2    

캐릭터셋만 변경하면 해결될것으로 보이나 문제는 캐릭터셋 변경시 접속이 안되거나 기존 데이터가 깨지는등의 문제가 발생할 수 있다고 하여 망설여집니다. 

1. 그냥 진행(캐릭터셋 변경)해도 별 문제 없을까요? 변경하는 방법은 검색으로 확인했습니다.

2. 캐릭터셋 변경에 따른 문제사항 및 변경에 관한 부분만 도움을 받을수 있는 업체가 있나요? 이것만 해결되면 백업/복원은 개발팀에서도 가능할듯 싶어서요.

 

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입