oracle中用一个用户导出的dmp文件中含有多个表空间,怎么用该用户将这个文件再导入数据库

导入导出用的用户是一个... 导入导出用的用户是一个 展开
 我来答
太平岁年丰9
2013-08-18 · TA获得超过1231个赞
知道小有建树答主
回答量:1017
采纳率:100%
帮助的人:1092万
展开全部

按用户导入是有要求的

  1. 导入用户要存在

  2. 要导入的用户表存在且结构与dmp中相同(可以不管表在哪个表空间里),自动建表时会报错:对象已存在。可以用ignore=y忽略,数据会正确导入 

  3. 或者这些表空间存在且有权限和quota,它会自动建立表并导入数据

掌握这三个条件,没有什么用户不能导入的

追问
在导入.dmp 文件时 先要建立表空间用户,但是我这个.dmp文件中有几个表空间,一个用户 ,这个用户只能设置一个默认的表空间;这样我要如何导入呢
追答
需要你先建用户,然后再建这几个表空间,再给这个用户在这些表空间quota或者unlimited tablespace权限,导入就没问题了。
dmp里有建表语句,包含了表空间部分,所以它是不会管你默认表空间是什么,假设你默认表空间是system,而你所有的表都在其它表空间上,你导入时会按照表的原始位置建表,而不会建在你默认表空间的。
sunchongkai505
推荐于2017-09-26 · TA获得超过1005个赞
知道小有建树答主
回答量:959
采纳率:0%
帮助的人:361万
展开全部

用如下命令即可:

imp 用户名/密码@实例名称 file=磁盘路径\文件名.dmp fromuser=来自用户的名称 touser=导入到用户的名称
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangxuelin456
2013-08-17 · 超过23用户采纳过TA的回答
知道答主
回答量:78
采纳率:100%
帮助的人:34万
展开全部
首先用这个用户登录到oracle数据库。
imp username/pwd@SID file=d:\daochu.dmp
imp username/pwd@SID@HUST full=y file=file= d:\data\newsmgnt.dmp ignore=y
或者用plsql中的Tools--import tables --oracle import 选择你的dmp文件导入即可。
追问
在导入.dmp 文件时 先要建立表空间用户,但是我这个.dmp文件中有几个表空间,一个用户 ,这个用户只能设置一个默认的表空间;这样我要如何导入呢
追答
建表空间和用户,要与之相对应。否则数据在导入时会报错。找不到用户或者表空间。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式