日期:2014-05-16 浏览次数:20616 次
Oracle的imp/exp组件是我们常用的工具,它的一个操作原则就是向下兼容。下面是据此总结的几个使用规则和相关测试: 
规则1:低版本的exp/imp可以连接到高版本(或同版本)的数据库服务器,但高版本的exp/imp不能连接到低版本的数据库服务器 
--1.1 使用9i客户端通过imp连接到10g数据库 
C:\Documents and Settings\yuechaotian>exp userid=hdtest/test@s67 tables=(ab01) rows=n file=d:\x.dmp 
Export: Release 9.2.0.1.0 - Production on 星期三 2月 20 10:09:55 2008 
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production 
With the Partitioning, OLAP and Data Mining options 
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集 
注: 将不会导出表数据(行) 
即将导出指定的表通过常规路径 ... 
. . 正在导出表??????????????????????????? AB01 
在没有警告的情况下成功终止导出。 
--1.2 使用10g客户端通过imp连接9i数据库:连接失败(而不是导出失败) 
C:\Documents and Settings\yuechaotian>exp userid=hbjb_kf_hd/test@s46 owner=hdtest file=d:\x.dmp 
Export: Release 10.2.0.1.0 - Production on 星期三 2月 20 09:57:22 2008 
Copyright (c) 1982, 2005, Oracle. All rights reserved. 
EXP-00056: 遇到 ORACLE 错误 6550 
ORA-06550: 第 1 行, 第 41 列: 
PLS-00302: 必须说明 'SET_NO_OUTLINES' 组件 
ORA-06550: 第 1 行, 第 15 列: 
PL/SQL: Statement ignored 
EXP-00000: 导出终止失败 
规则2:高版本exp出的dmp文件,低版本无法imp(无法识别dmp文件) 
--2.1 使用10g客户端exp出10g的数据 
C:\Documents and Settings\yuechaotian>exp userid=test/test@orcl owner=test file=d:\10g.dmp 
Export: Release 10.2.0.1.0 - Production on 星期三 2月 20 11:16:39 2008 
Copyright (c) 1982, 2005, Oracle. All rights reserved. 
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production 
With the Partitioning, OLAP and Data Mining options 
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集 
服务器使用 AL32UTF8 字符集 (可能的字符集转换) 
即将导出指定的用户... 
…… 
导出成功终止, 但出现警告。 
C:\Documents and Settings\yuechaotian> 
--2.2 使用9i客户端imp上面所导出的dmp文件到10g:可以连接到10g中,但无法识别文件 
C:\Documents and Settings\yuechaotian>imp userid=test/test@s10g fromuser=test touser=test file=d:\10g.dmp 
Import: Release 9.2.0.1.0 - Production on 星期三 2月 20 11:20:33 2008 
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production 
With the Partitioning, OLAP and Data Mining options 
IMP-00010: 不是有效的导出文件,标题验证失败 
IMP-00000: 未成功终止导入 
C:\Documents and Settings\yuechaotian> 
规则3:低版本exp出的dmp文件,高版本可以imp(向下兼容) 
-- 3.1 使用9i客户端exp出9i中的数据 
C:\Documents and Settings\yuechaotian>exp userid=test/test@s9i owner=test file=d:\9i.dmp 
Export: Release 9.2.0.1.0 - Production on 星期三 2月 20 11:25:04 2008 
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 
连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production 
With the Partitioning, OLAP and Oracle Data Mining options 
JServer Release 9.2.0.1.0 - Production 
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集 
即将导出指定的用户... 
…… 
在没有警告的情况下成功终止导出。 
C:\Documents and Settings\yuechaotian> 
-- 3.2 使用10g客户端imp到10g数据库中 
C:\Documents and Settings\yuechaotian>imp userid=test/test@orcl fromuser=test touser=test file=d:\9i.dmp 
Import: Release 10.2.0.1.0 - Production on 星期三 2月 20 11:28:46 2008 
Copyright (c) 1982, 2005, Oracle. All rights reserved. 
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production 
With the Partitioning, OLAP and Data Mining options 
经由常规路径由 EXPORT:V09.02.00 创建的导出文件 
已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入 
导入服务器使用 AL32UTF8 字符集 (可能的字符集转换) 
. . 正在导入表???????????????? "AUDIT_ACTIONS"导入了???????? 144 行 
…… 
成功终止导入, 但出现警告。 
C:\Documents and Settings\yuechaotian> 
规则4:从Oracle 低版本的Export数据可以Import到Oracle高版本中,但限于Ora