关于oracle数据库高版本向低版本迁移的解决方法

本文介绍了一种从Oracle高版本(Oracle10g)迁移到低版本(Oracle9i)的方法。主要步骤包括:在低版本Oracle上配置到高版本的连接,通过低版本客户端导出数据文件,新建相应数据库、用户及表空间,并最终完成数据导入。
     昨天要把自己机器上的数据库迁移到专用服务器上一份,本地安装的Oracle10g,服务器上安装的数据库是Oracle9i,一开始进行如下操作:
本地导出数据库文件:
exp gzwp/wlkp@taxser file= d:\20130226.dmp owner=gzwp
拿到服务器上导入:
imp gzwp/wlkp@taxser file=d:\20130226.dmp fromuser=gzwp touser=gzwp ignore=y
报错:
IMP-00010:不是有效的导出文件,标题验证失败 
IMP-00000:未成功导入
 
原因是数据库版本的问题,Oracle不支持高版本导入到低版本。解决方法:
1.在服务器上配置一个Oracle的数据库连接到本地Oracle10g(叫做taxser134),方式是通过oracle提供的帮助工具Net Manager或者修改tnsname.tra(9i的目录:%oracle_home%\ora92\network\admin,10g对应的目录:%oracle_home%\product\10.2.0\db_1\NETWORK\ADMIN)
在远程服务器上导出数据库文件:
exp gzwp/wlkp@taxser134 file= d:\20130226.dmp owner=gzwp
 
2.在远程服务器上新建对应的数据库,用户以及表空间:
1>.可以通过oracle工具Database Configuration Assistant新建数据库实例(ntaxser):
  要注意选择字符集时和本地的数据库对应,否则可能出现中文乱码。
2>.
sqlplus sys/wlkp as sysdba
create user gzwp identified by wlkp;
grant connect,resource,dba,create session to gzwp;
create tablespace WLKPTABLE     
logging     
datafile 'F:\oracle\product\10.1.0\oradata\ntaxser\WLKPTABLE.dbf'    
size 50m     
autoextend on     
next 50m maxsize 20480m     
extent management local;
//.......所有用到的表空间
 
3.然后导入到服务器上导入:
imp gzwp/wlkp@ntaxser file=d:\20130226.dmp fromuser=gzwp touser=gzwp ignore=y
导入成功!
 
其实,所有关于oracle数据库高版本向低版本迁移的解决方法,做法都是类似的:通过在低版本Oracle上配置一个连接到高版本数据库,通过低版本oracle客户端导出数据文件,然后再进行导入

     本文转自NightWolves 51CTO博客,原文链接:http://blog.51cto.com/yangfei520/1141135,如需转载请自行联系原作者



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值