当前位置导航:炫浪网>>网络学院>>编程开发>>Oracle教程

Oracle不同版本间用exp进行导数据时的问题


  关于Oracle不同的版本间用exp进行导数据时的一些问题。
  公司内的一个项目系统的数据库从Oracle 8i 升级到 9i
  
  机器t1 安装 Oracle 8.16
  机器t2 安装 Oracle 8.17
  机器t3 安装 Oracle 9i
  
  现在为了将t1数据库中的某一个用户的数据导入到t3的9i中去, 在t3机器执行:
  
  E:\>exp system/manager@t1 owner=wlbtst file=c:\emp0805wlbtst.dmp log = c:\emp0805wlbtst.log compress=n
  
  Export: Release 9.0.1.1.1 - Production on 星期二 8月 5 13:47:08 2003
  
  (c) Copyright 2001 Oracle Corporation. All rights reserved.
  
  
  连接到: Oracle8i Enterprise Edition Release 8.1.6.0.0 - Production
  With the Partitioning option
  JServer Release 8.1.6.0.0 - Production
  EXP-00056: 遇到 ORACLE 错误 942
  ORA-00942: 表或视图不存在
  EXP-00000: 导出终止失败
  
  E:\>
  
  所以只有在t1或t2的机器上执行exp,然后再用t3的imp将数据导入t3的9i库中,
  
  当时我感到很纳闷,为什么不能用9i中的exp去把8i的数据导出来呢?
  于是到网上搜索,找到一个如下网页:
  http://www.ucheng.net/news/YeNei/043.asp
  
  文中提到2个规则:
  
  规则一:从Oracle 低版本的Export数据可以Import到Oracle高版本中,但限于Oracle的相邻版本,如从Oracle 7 到 Oracle 8。对于两个不相邻版本间进行转换,如从Oracle 6 到 Oracle 8,则应先将数据输入到中间版本—Oracle 7,再从中间数据库转入更高版本。 规则二:Oracle的Export/Import工具只能连接到拥有更高或者一样的Export/Import版本的数据库。如Oracle 8.0.5的Export/Import(版本8.0.5.0.0)可连接到Oracle 8.1.6数据库(版本8.1.6.0.0);高版本的Export导出来的转储文件,低版本的Import读不了;低版本的Export导出来的转储文件,高版本的Import可以进行读取。
相关内容
赞助商链接