Oracle 导入 IMP-00058错误及其他

接触到一个项目 ,需要用到oracle  于是:

 一:下载,安装  ,

这里面讲的很仔细, 很清楚,跟着做就可以了。感谢作者。


http://blog.csdn.net/cxin917/article/details/50637891


因为我oracle 直接装的是32位,(听说32位比64稳定,兼容还是什么的)

就没有做上面连接教程,直接连接就可以了。


二:导入数据库 ,因为同事给的都是dmp文件,收索了一下 ,相当于sql server 的备份数据库吧。


当时oracle 是用虚拟机装的 ,总是出 1017 ,或者其他错误什么的,出错改错,网上怎么说怎么做,还是不行 ,错误一个接一个。

于是 ,放弃 虚拟机。直接装系统里面了。


此时,就是回到一,安装步骤安装了。


三:找了好久 ,说导入.dmp 文件  ,说如果是exp 形式导出的, 需要用 imp 导入。 当然 ,是cmd 窗口下运行。

列:exp test/test@test file =E:\Oracle\daochutest.dmp full = y 

还说 ,导入前 需要 建立 表空间, 用户 。 要跟导出的时候 一样才行,要不然 存储过程 视图啥的 可能会丢失。


具体 步骤 如下:

create tablespace test datafile 'E:\Oracle\test.ora' size 500m;
--1.这里的test为表空间名称,路径自己来命名。然后点执行按钮。


create user test identified by test default tablespace test quota 500m on users;
--  2.这里第一个test为用户名,第二个test为密码,第三个test为表空间名。然后执行。




--3.授权 给test 赋的权限挺高的  可以导出

grant   dba , connect,resource   to test


--4删除表空间格式:

DROP TABLESPACE test
 INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS 


/*
tablespace:指定要删除的表空间的名称
INCLUDING CONTENTS:删除表空间内的所有段
AND DATAFILES:删除关联的操作系统文件
CASCADE CONSTRAINTS:如果要删除的表空间之外的表引用了该表空间内表的主
键和唯一键,则删除这种引用完整性约束。
*/


drop user  test 
--5.删除用户


2 好3 之间,在test 中 建立了一个表。测试用。

2执行后,不能导 因为没有权限 。

所以3 给了权限。 dba  

然后 在cmd 执行  ,我用的管理员,怕普通的不行,还没有用普通的尝试。

导出成功,得到如下.dmp 文件。


导出成功。

四:尝试 导入 


1. 试图把表空间给删除掉。 想看是不是没有表空间 会错误。



然后导入,报错:





报:IPM-00058 错误   遇到 12154   。


2.重新建立 表空间 :


http://blog.csdn.net/xiaojin21cen/article/details/40077893






表空间 建好。


2.再导入:



imp test/test@orcl file =E:\Oracle\daochutest.dmp full = y 

还是报一样的错误,此时 应该是没有建立用户吧   用户名 密码都不存在的。


 于是 ,添加 用户,给予权限,重新导入


导入成功 。

另:用toad 工具 查看 .dmp文件 ,可以看到 具体内容 




本来只想导出test 里面的东西的,结果把所有的都导出来了,看来导出的时候,参数填写的少,还需要改进。


网上搜了一下, 只需要在 导出的时候 加个参数 :onwer = test(当前用户),并将 full = y  这句话 去掉 就可以了(不去掉 会起冲突)


今天又重新实验了一下,发现 如果是用 dba  的权限导出的,必须要用dba的权限导入,如果是普通的用户 导出的,

如果用system这个账号的话,即使不建立表空间也是可以的 ,但是 一般的用户 很少有system 的权限。 最好还是要建立一个表空间。

完结撒花。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值