导入oracle转储时出错

时间:2009-03-12 10:50:15

标签: oracle import dump

我正在尝试将转储导入到同一个oracle DB中的两个模式。解决方法是执行此操作。

我正在尝试使用INDEXFILE选项运行imp命令,以便能够修改sql中的表空间名称。这就是我得到的:

  

E:\ oracle_10_2 \ BIN> imp atlantis / atlantis @ orcl file = ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp indexfile = index.sql full = y log = imp.log

     

导入:版本10.2.0.1.0 - 生产于2009年3月12日星期四15:31:44

     

版权所有(c)1982,2005,Oracle。保留所有权利。

     

连接到:Oracle数据库10g企业版10.2.0.1.0版 - 产品   重刑   使用分区,OLAP和数据挖掘选项

     

IMP-00002:无法打开ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp进行读取   导入文件:EXPDAT.DMP>

看起来像是文件权限问题,所以我尝试更改它。

  

E:\ oracle_10_2 \ BIN> cacls E:\ ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp / p atlantis:F

     

你确定(是/否)?

     

已处理的文件:E:\ ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp

     

E:\ oracle_10_2 \ BIN> cacls E:\ ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp

     

E:\ ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp CORP \ atlantis:F

但问题仍然存在。

2 个答案:

答案 0 :(得分:4)

如果您使用的是Oracle 10g,请考虑使用新的导出/导入工具Oracle Data Pump,您可以在其中使用REMAP_TABLESPACE参数。

无论如何,你错过了exportfile的路径(基于授予权限的命令)。然后你写道:

file=ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp

而不是

file=E:\ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp

然后,结果导出命令起作用:

imp atlantis/atlantis@orcl file=E:\ABCD1_EXCLUDE_CLOB_TABS_BAK.dmp indexfile=index.sql full=y log=imp.log

答案 1 :(得分:0)

以管理员身份打开窗口命令行 imp user / pass @ databasename(listenername)file ='DMP路径'  log = indexfile.log full = y;

不要忘记添加数据库或侦听器名称。