由于导出dmp文件的用户名在导入的oracle中不存在,所以会报错。
在impdp后边加上:
REMAP_SCHEMA=sourcename:targetname
比如导出时用户名为A,导入是用户名为B。
REMAP_SCHEMA=A:B
加上后导入可能还会提示tablespace不存在,再加上:
REMAP_TABLESPACE=sourcespacename:targetspacename
查看表空间的名称及大小
SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size
FROM dba_tablespaces t, dba_data_files d
WHERE t.tablespace_name = d.tablespace_name
GROUP BY t.tablespace_name;
示例:
impdp XXX/XXX@XXX:1521/orcl directory=DPDUMP dumpfile=XXX.dmp REMAP_SCHEMA=XXX1:XXX2 REMAP_TABLESPACE=aaa1:aaa2