设为首页 收藏本站
查看: 872|回复: 0

[经验分享] Oracle的imp/exp 各版本之间的规则

[复制链接]

尚未签到

发表于 2018-9-22 13:26:52 | 显示全部楼层 |阅读模式
  Oracle的imp/exp组件是我们常用的工具,它的一个操作原则就是向下兼容。下面是据此总结的几个使用规则和相关测试:
  
  规则1:低版本的exp/imp可以连接到高版本(或同版本)的数据库服务器,但高版本的exp/imp不能连接到低版本的数据库服务器
  规则2:高版本exp出的dmp文件,低版本无法imp(无法识别dmp文件)
  规则3:低版本exp出的dmp文件,高版本可以imp(向下兼容)
  规则4:从Oracle 低版本的Export数据可以Import到Oracle高版本中,但限于Oracle的相邻版本
  
  
  
  规则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:>
  
  Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
  
  
  连接到: Oracle Database 10g Enterprise Edition>
  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:>
  
  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:>
  
  Copyright (c) 1982, 2005, Oracle. All rights reserved.
  
  
  连接到: Oracle Database 10g Enterprise Edition>
  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:>
  
  Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
  
  
  连接到: Oracle Database 10g Enterprise Edition>
  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:>
  
  Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
  
  
  连接到: Oracle9i Enterprise Edition>
  With the Partitioning, OLAP and Oracle Data Mining options
  JServer>
  已导出 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:>
  
  Copyright (c) 1982, 2005, Oracle. All rights reserved.
  
  
  连接到: Oracle Database 10g Enterprise Edition>
  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高版本中,但限于Oracle的相邻版本,如从Oracle 7 到 Oracle 8。对于两个不相邻版本间进行转换,如从Oracle 6 到 Oracle 8,则应先将数据输入到中间版本—Oracle 7,再从中间数据库转入更高版本。
  --我使用10g的imp功能,可以将由817导出的dmp文件直接导入10g中,这与该规则的介绍不同。(该规则出自高道强的《Oracle导入导出工具实现数据库移植》)
  C:\Documents and Settings\yuechaotian>imp userid=test/test fromuser=scott touser=test file=d:\tyc.dmp
  
  Import:>
  
  Copyright (c) 1982, 2005, Oracle. All rights reserved.
  
  
  连接到: Oracle Database 10g Enterprise Edition>
  With the Partitioning, OLAP and Data Mining options
  
  经由常规路径由 EXPORT:V08.01.07 创建的导出文件
  
  警告: 这些对象由 SCOTT 导出, 而不是当前用户
  
  已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入
  导入服务器使用 AL32UTF8 字符集 (可能的字符集转换)
  导出服务器使用 ZHS16GBK NCHAR 字符集 (可能的 ncharset 转换)
  . 正在将 SCOTT 的对象导入到 TEST
  . . 正在导入表 "ACCOUNT"导入了 5 行
  . . 正在导入表 "BONUS"导入了 0 行
  . . 正在导入表 "DEPT"导入了 4 行
  . . 正在导入表 "EMP"导入了 14 行
  . . 正在导入表 "RECEIPT"导入了 1 行
  . . 正在导入表 "SALGRADE"导入了 5 行
  即将启用约束条件...
  成功终止导入, 没有出现警告。
  
  C:\Documents and Settings\yuechaotian>
  
  --以上操作,对于OracleXE的10g版本同样适用:
  C:\Documents and Settings\yuechaotian>imp userid=test/test fromuser=scott touser=test file=d:\tyc.dmp
  
  Import:>
  
  Copyright (c) 1982, 2005, Oracle. All rights reserved.
  
  
  连接到: Oracle Database 10g Express Edition>
  
  经由常规路径由 EXPORT:V08.01.07 创建的导出文件
  
  警告: 这些对象由 SCOTT 导出, 而不是当前用户
  
  已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入
  导出服务器使用 ZHS16GBK NCHAR 字符集 (可能的 ncharset 转换)
  . 正在将 SCOTT 的对象导入到 TEST
  . . 正在导入表 "ACCOUNT"导入了 5 行
  . . 正在导入表 "BONUS"导入了 0 行
  . . 正在导入表 "DEPT"导入了 4 行
  . . 正在导入表 "EMP"导入了 14 行
  . . 正在导入表 "RECEIPT"导入了 1 行
  . . 正在导入表 "SALGRADE"导入了 5 行
  即将启用约束条件...
  成功终止导入, 没有出现警告


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-599941-1-1.html 上篇帖子: Oracle中PL/SQL的CASE语句 下篇帖子: Oracle练习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表