请问几个ORACLE10G数据导入的问题

zdnest 2016-06-02 11:54:36
目前情况:
1.有2台服务器,A是生产服务器,B是备份服务器,目前每天晚上使用EXP full=y把A的数据库全备份到B上。
2.B上有一个测试库,会定期把备过来的数据库的主要用户SPH恢复到B上一次,以做恢复测试和二次开发的程序测试
3.如果A发生故障,需要在最短时间内把最新的数据备份恢复到A上,如果A完全无法使用了,需要恢复到B上代替A


问题:
1.最近一次做IMP时,发生错误,导入失败,显示如下图

想过很多办法,包括换用户,单独导入SYSTEM下面这5个PBCAT开头的表,重建数据库,用笔记本新装了一个同版本的ORACLE10,都不行。IMP命令是保存好的文本,不存在打错的可能性。
2.单独写了个EXP命令,不使用full=y,使用OWNER=SPHXN单独进行导出,再IMP就可以了,但是这个生产库上有好几个相关的用户,里面的对象估计是互相有关系的,所以导入后有很多包、视图不能编译,需要再单独把相关的用户导入,GRANT很多权限,才能编译成功,但是这样A上的所有用户要单独导出,再单独赋权太费时间了,不利于备份和恢复

现在就想问问,现在IMP失败,可能会是什么原因?
另外,有什么办法能在最短的时间进行数据库的全库恢复让业务恢复?现在生产库上连接了几套系统,加了好几个相关用户,需要的权限、密码都不知道,要联系对方技术人员进行修改太耗费时间
最近在看EXPDP/IMPDP的导出导入,不知道这个能进行全库的备份恢复吗?
...全文
184 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zdnest 2016-06-02
  • 打赏
  • 举报
回复
引用 7 楼 wmxcn2000 的回复:
好的,成功了就好!
非常感谢!这下放心了!
卖水果的net 2016-06-02
  • 打赏
  • 举报
回复
好的,成功了就好!
zdnest 2016-06-02
  • 打赏
  • 举报
回复
引用 5 楼 wmxcn2000 的回复:
IMPDP的时候再用schema多次分用户导入? 不用的,可以一次导入多个用户,注意:impdp 导入时,目标用户不能存在;
哈哈,刚刚IMPDP用FULL=Y导入成功了,虽然有2652个错误,不过似乎都是几个系统用户存在的对象,都跳过了。 IMP的时候还要先建用户,IMPDP不用先建,更方便啊,刚才的导入31个用户全部有了! 在笔记本上IMPDP耗时4小时,好象比我在服务器上用IMP所花时间更少了,不错~~
卖水果的net 2016-06-02
  • 打赏
  • 举报
回复
IMPDP的时候再用schema多次分用户导入? 不用的,可以一次导入多个用户,注意:impdp 导入时,目标用户不能存在;
zdnest 2016-06-02
  • 打赏
  • 举报
回复
引用 3 楼 wmxcn2000 的回复:
imp 导入时,建议使用 fromuser=xxx touser=yyy 这样的参数,多次导入; 如果能用expdp ,就用expdp ,这个工具速度相当快,在服务器更快;
明白了,谢谢!! 我先试下EXPDP,看能不能正常恢复,不行再试下EXP加OWNER 那EXPDP就只能全库导出喽?IMPDP的时候再用schema多次分用户导入?
卖水果的net 2016-06-02
  • 打赏
  • 举报
回复
imp 导入时,建议使用 fromuser=xxx touser=yyy 这样的参数,多次导入; 如果能用expdp ,就用expdp ,这个工具速度相当快,在服务器更快;
zdnest 2016-06-02
  • 打赏
  • 举报
回复
引用 1 楼 wmxcn2000 的回复:
导出的时候,不要使用 full=y 这个选项 可以使用 owner=(u1,u2,u3) 这个选,指定用户名;
感谢版主回复~~ 那就是如果我原数据库有几个用户要导出的,在owner=里面加上就可以一次性导出了? IMP导入也可以这么吗?嘿嘿 另外,用expdp/impdp是不是要好些呢?今天刚试了下EXPDP,感觉速度快不少啊(当然是本机),而且文件也要小很多
卖水果的net 2016-06-02
  • 打赏
  • 举报
回复
导出的时候,不要使用 full=y 这个选项 可以使用 owner=(u1,u2,u3) 这个选,指定用户名;

17,377

社区成员

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

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