表空间的Oracle导出/导入问题

时间:2015-02-13 11:57:44

标签: oracle dump

我创建了一个本地oracle数据库的转储,如下所示:

expdp mydb/passwd -schemas=myschema -dumpfile=mydumpfile.dmp -logfile=oralog.log

我将转储发送给应该在他的oracle服务器中导入转储的人。现在,他告诉我,导入失败是由于与表空间相关的一些错误(如表空间XYZ不可用, - 数据库XYZ与相应的数据库无关)。此外,他要求我提供有关表空间转储的一些信息。

由于我经常使用MySQL并且对这些Oracle-Tablespace的知识知之甚少:我真的很感激能得到一些建议。

1 个答案:

答案 0 :(得分:3)

使用 REMAP_TABLESPACE 参数。

例如,

REMAP_TABLESPACE=(source1:destination1,source2:destination1,source3:destination1,source4:destination1)

浏览有关Data Pump Import的文档。一个小小的引用 -

  

可以指定多个REMAP_TABLESPACE参数,但没有两个可以   具有相同的源表空间。目标架构必须具有   目标表空间中有足够的配额。

     

请注意,使用REMAP_TABLESPACE参数是唯一的方法   在Data Pump Import中重新映射表空间。这更简单,更清洁   方法比原始导入实用程序中提供的方法。那   方法受到许多限制(包括数量)   表空间子条款)有时会导致一些人失败   DDL命令。

     

相比之下,使用REMAP_TABLESPACE的数据泵导入方法   参数适用于所有对象,包括用户,并且它可以工作   无论DDL语句中有多少个表空间子句。