Oracle数据库不同版本间用exp来导数据

文章作者 100test 发表时间 2007:09:06 12:57:00
来源 100Test.Com百考试题网


  公司内的一个项目系统的数据库从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的数据导出来呢?

  以下介绍两个规则:

  规则一:从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可以进行读取。



相关文章


Oracle:一条SQL实现将多行数据并为一行显示
Oracle数据库不同版本间用exp来导数据
带你轻松接触使用特殊索引时的注意事项
解析Oracle数据库内在索引和参数的调整
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛