我使用exp
命令行实用程序从一个架构user1导出数据dmp文件。
我想使用imp
命令行实用程序将此转储导入另一个新创建的(空)架构用户2。
我尝试过以下几件事:
imp system/password@tesdb fromuser=user1 touser=user2 file=E:\Data\user1.dmp log=E:\Data\user1.log
我收到错误
IMP-00002: failed to open user1.dmp for read
Import file: EXPDAT.DMP >
任何帮助表示感谢。
答案 0 :(得分:24)
在更正可能的dmp文件问题后,这是一种确保重新映射和适当导入架构的方法。如果需要,这还将确保表空间也会发生变化:
impdp system/<password> SCHEMAS=user1 remap_schema=user1:user2 \
remap_tablespace=user1:user2 directory=EXPORTDIR \
dumpfile=user1.dmp logfile=E:\Data\user1.log
EXPORTDIR必须在oracle中定义为系统用户的目录
create or replace directory EXPORTDIR as 'E:\Data';
grant read, write on directory EXPORTDIR to user2;
答案 1 :(得分:1)
问题在于dmp文件本身。我不得不重新导出文件,命令工作正常。谢谢@Justin Cave