oracle11G与oracle10G之间数据的备份与还原

总所周知,按照普通方法从oracle11G中备份一个数据库,在oracle10G中是无法还原的。想要能还原,在备份的时候需要添加oracle10G的版本号。

一、备份数据

1、查看oracle的版本:select * from v$version;

2、备份数据库:

SQL格式:expdp userid='管理员/密码 as sysdba' schemas=数据对象的名称  dumpfile=备份数据文件名称.dmp logfile=备份数据文件名称.log version=oracle10G的版本

如:管理员为system,密码为manager,数据对象为test,备份放到数据文件名称为test,oracle10G的版本号为10.2.0.1.0,那么我用的sql即为:

expdp userid='system/manager as sysdba' schemas=test dumpfile=test.dmp logfile=test.log version=10.2.0.1.0

备份出来的文件,默认在oracle的安装目录下,有两个:test.dmp和test.log

二、还原数据:

1、将test.dmp和test.log两个文件放置oracle10G的dpdump目录下;

查看oracle的安装目录,可以通过查看数据文件和控制文件的存放位置来获知。

查看数据文件存放位置:select name from v$datafile;

查看控制文件存放位置:select name from v$controlfile;

2、还原数据库:

SQL形式:impdp userid='管理员/密码@oracle实例 as
sysdba'directory=DATA_PUMP_DIR schemas=数据对象名称 dumpfile=备份数据文件名称.dmp logfile=备份数据文件名称.log  version=oracle10G的版本号

还是使用上面的例子,那么我的SQL即为:

impdp userid='system/manager@orcl10g as sysdba'directory=DATA_PUMP_DIR schemas=test dumpfile=test.dmp logfile=test.log  version=10.2.0.1.0

在还原的时候,可能会碰到“DATA_PUMP_DIR***目录”的问题,只需要设置一下DATA_PUMP_DIR的默认目录即可,通过都是在oracle安装目录的dpdump下。

SQL形式为:create or replace directory DATA_PUMP_DIR as 'oracle安装\dpdump';

因此上面例子的所用SQL即为:create or replace directory DATA_PUMP_DIR as 'D:\oracle\product\10.2.0\admin\orcl10g\dpdump';

如此之后,应该就可以还原成功了。

猜你喜欢

转载自1017401036.iteye.com/blog/2333370
今日推荐