data pump expdp impdp 시 공백 오류 1 5 1,512

by 별씨 [Oracle 백업/복구] datapump expdp impdp [2018.04.25 11:03:12]


안녕하세요

서버의 테이블을 백업하여 개발 PC로 옮기려하는데

너무 많은 양이라 data pump를 사용하려합니다.

expdp impdp 둘 다 정상작동하는게 확인 되었는데,

테이블 중 데이터 타입이 char인 경우 데이터의 뒤쪽에 데이터 길이 만큼의 공백이 생겨

impdp 시 데이터 크기 오류로 데이터가 들어가지 않고 테이블 틀만 임포트됩니다.

exp/imp 사용하자니 너무 오래 걸려서 저 문제만 해결하면 금방할 것 같아 질문드립니다.

 

http://truepro.tistory.com/entry/expdp-impdp-%EC%9D%98-%EC%97%AC%EB%9F%AC%EA%B0%80%EC%A7%80-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%B6%94%EC%B6%9C-%EB%B0%8F-%EC%A0%81%EC%9E%AC-%EC%98%B5%EC%85%98

 

이 링크에서 설명하듯 데이터링크로 내려받으면 데이터 타입이 자동으로 변하는걸까요..

이걸 해결하려면 어떻게 해야할까요

 

참고로 char형이 없는 테이블은 잘 들어갑니다.

tns방식은 사용할 수 없구요.. 디비링크로만 가능한 상황입니다.

 

expdp id2/pw2 network_link=dblink1 directory=test_dump_dir dumpfile=test_dmp job_name=t1 tables=tb1

impdp id2/pw2 directory=test_dump_dir dumpfile=test_dmp tables=tb1 remap_tablespace=ts1:ts2

 

이런식으로 사용중입니다.

impdp에 네트워크 링크 붙여서 바로 임포트해도 저 링크에 따르면,

한글이면 데이터 크기가 변한다고해서 같은 결과일 것 같아 아직 시도해보진 않았습니다.

 

by 임상준 [2018.04.25 11:18:24]

양쪽 db 테이블 구조가 다른가요? 아니면 케릭터셋이 다른가요?


by 별씨 [2018.04.25 13:26:17]

캐릭터셋이 같은 다른 PC와 데이터 교환이 가능한 것을 확인했습니다.

그러나 서버와 캐릭터셋을 맞춰도 같은 문제가 발생하네요ㅠㅠ..


by 별씨 [2018.04.25 13:44:54]

추가하자면

select parameter, value from nls_database_parameters;

조회 시 NLS_RDBMS_VERSION 만 다르고 나머지는 다 같습니다.

expdp 시 버전을 명시해줘도 같은 공백 오류가 납니다.


by 임상준 [2018.04.25 13:59:16]

상황이 잘 이해가 안가네요;;

db 케릭터셋이 동일하고 테이블 컬럼 타입과 길이가 동일하고 NLS_LENGTH_SEMANTICS 까지 동일하다면 뭔가 변하는게 없을텐데요.


by 별씨 [2018.04.25 14:20:21]

뭔가 더 확인해볼만한 사항이 없을까요?

다른건 버전밖에 없는데 버전까지 맞춰야할까요...

서버가 10.2.0.4.0이고 개발PC가 10.2.0.3.0인데..

개발 PC들끼리는 expdp/impdp 다 잘 되는데ㅠ

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