[求助]怎样用imp导入一个含有partition的dmp文件

windforce89 2018-01-24 12:59:57
如题,自己是做java开发的,突然接到这个任务,不是太清楚怎么操作,网上看了很多文章也没看到完全合适的,求助大家

背景:oracle10g(10.2.4.0),导出文件是用emp按用户(不是sys)导出的dmp文件,大小接近50个G。 可以确定的是里面有的表作了partition,现在需要把这个库导出到另外一台电脑上作为备份。 目标机器上相同版本的oracle数据库软件已安好

现在想要导入这个dmp文件,不过不清楚该怎么操作。
我看有的文章说不需要提前创建表空间什么的;
但又看到一篇文章这么说:
“有关imp表空间的问题
1 如果存在和源环境一致的表空间,并且imp的用户在该表空间有quato,那么对象会在和源环境一样的表空间
2 如果不存在和源环境一致和表空间,对象生成在用户的默认表空间下面
3 如果存在和源环境一致表空间,但没有quato在这个表空间上面,对象也生成在用户的默认表空间上面
4 但是对于以下情况,一定要存在源和目标一致的表空间,并且在之上有quato
Is partitioned
Is a type table
Contains LOB, VARRAY, or OPAQUE type columns
Has an index-organized table (IOT) overflow segment”

这个第4点是不是意味着我需要手动建立表空间、分区这些?

我这个库里面东西挺杂的,上百个表,部分大表作了分区。 具体该如何操作呢?
必须要这样么:
先手动创建用户,再手动创建和原库一样的表空间和分区,之后再用imp命令导入? 感觉这样一是很麻烦,二是很容易输入错误吧。有没有更方便的方法?





...全文
695 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
minsic78 2018-01-26
  • 打赏
  • 举报
回复
另外,因为是10g,那么可以考虑用impdp+dblink的方案来解决这个问题,最安逸,想转换表空间也就是一个remap_tablespace参数的事~
minsic78 2018-01-26
  • 打赏
  • 举报
回复
不想麻烦最无脑的方法就是直接建和原库一样的表空间,名称,大小等等,否则只有先建表然后加ignore=y或者data_only=y导入了
  • 打赏
  • 举报
回复
有对应的表空间和用户就可以倒进去
liu志坚 2018-01-24
  • 打赏
  • 举报
回复
不用纠结那么多啊,你参考原库建上对应的表空间和用户及授权。 然后 imp导入就行了。 imp导入的时候会自动创建表结构包括分区的。Imp的命令网上查很多。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧