Home  >  Article  >  Database  >  [Oracle] oracle 11g备份到10g

[Oracle] oracle 11g备份到10g

WBOY
WBOYOriginal
2016-06-07 15:25:511177browse

11g备份,导入10g的时候会抛错,直接阻止导入。 但是有时候还必须得把11g的数据库导入到10g,我今天就遇到了这种情况。 一开始只是把11g中的表全部备份,成功导入10g。但是缺少视图、存储过程等。一个个sql创建累死人,方法太笨。请教了一下资深DBA,重新备

11g备份,导入10g的时候会抛错,直接阻止导入。

但是有时候还必须得把11g的数据库导入到10g,我今天就遇到了这种情况。

一开始只是把11g中的表全部备份,成功导入10g。但是缺少视图、存储过程等。一个个sql创建累死人,方法太笨。请教了一下资深DBA,重新备份,重新导入,成功。

现在把我导入操作的全过程记录下来,希望可以方便更多的人!

一、在11g服务器上,使用expdp命令备份数据

EXPDP USERID='user/password'schemas=hsrep directory=DATA_PUMP_DIR dumpfile=aa.dmp logfile=aa.log version=10.2.0.1.0

其中,红色文字部分是根据需要改写的地方。例如我的sys密码是sys,数据库sid是orcl,要到出的用户名是hsrep,要导入到10.2.0.1.0版本的Oracle数据库中去。aa.dmp和aa.log将会在11g的dpdump目录中生成,例如我的11g装在了E盘下面,于是aa.dmp将会在E:\app\Administrator\admin\cuc\dpdump目录下被生成。

二、在10g服务器上,使用impdp命令恢复数据

准备工作:1.建库2.建表空间3.建用户并授权4.将aa.dmp拷贝到10g的dpdump目录下

IMPDP USERID='user/password' schemas=hserp directory=DATA_PUMP_DIR dumpfile=aa.dmp logfile=aa.log version=10.2.0.1.0

其中红色部分是根据需要改写的地方。例如我的sys密码是sys,数据库sid是orcl,要导入用户名为hsrep,要导入到10.2.0.1.0版本的Oracle数据库中去。aa.log将会在10g的dpdump目录中生成。

---------------

注意:导入和导出的用户必须一致!

自:http://blog.sina.com.cn/s/blog_5a2405d10100nerv.html

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn