欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

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

程序员文章站 2022-04-09 09:33:55
...

昨天要把自己机器上的数据库迁移到专用服务器上一份,本地安装的Oracle10g,服务器上安装的数据库是Oracle9i,一开始进行如下操作:本地导出数据库文件:expgzwp/

昨天要把自己机器上的数据库迁移到专用服务器上一份,本地安装的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客户端导出数据文件,然后再进行导入。

本文出自 “夜狼” 博客,请务必保留此出处