이미 끝나셨겠지만 아래 쿼리로 expdp / impdp 작업 진행을 체크 가능합니다.
SELECT * FROM DBA_DATAPUMP_JOBS ;
-- MONITOR DATA PUMP SESSION
SELECT S.INST_ID, S.SID, S.SERIAL#, S.EVENT, S.USERNAME, S.PROCESS, S.MACHINE, S.PROGRAM, S.MODULE, S.ACTION
, S.ROW_WAIT_OBJ#, ROW_WAIT_FILE# , S.EVENT, S.WAIT_CLASS, S.STATE, S.BLOCKING_SESSION_STATUS
--, S.BLOCKING_INSTANCE, S.FINAL_BLOCKING_SESSION_STATUS
, ( SELECT OWNER||' '||OBJECT_NAME||' '||OBJECT_TYPE FROM DBA_OBJECTS O WHERE O.OBJECT_ID = S.ROW_WAIT_OBJ# ) AS OBJ_INFO
, ( SELECT FILE_NAME FROM DBA_DATA_FILES D WHERE D.FILE_ID = S.ROW_WAIT_FILE# ) AS FILE_INFO
, D.*
FROM DBA_DATAPUMP_SESSIONS D, GV$SESSION S
WHERE S.SADDR = D.SADDR
ORDER BY S.INST_ID ;
테이블이 한개가 아니라면 expdp 시에 파일을 분할해서 parallel expdp 하시고
impdp 시에도 역시 parallel 하세요.(parallel 사용시 여러개의 테이블을 각각 단일 프로세스로 적재합니다)
기존 테이블에 인덱스나 제약 조건이 있으면 적재하는 속도는 아주 느려집니다.
통상적으로 비워진 테이블에 데이터 넣고 인덱스를 별도 생성합니다.
imdp 시에 작업명 (attach) 을 기록하고나, 임의 생성된 작업명을 기억했다가
impdp attach=작업명 id/비번 으로 접속해서 현재 진행중인 상황을 조회가능합니다.
impdp 중이라면 control + c 를 한번 누르면, 확인 할 수 있는 상태가 됩니다.
(그냥은 작업 취소 안되니 안심)