你好,游客 登录 注册 搜索
背景:
阅读新闻

Oracle 11g导入到10g引起的错误

[日期:2015-11-16] 来源:Linux社区  作者:lineqi [字体: ]
环境介绍
老环境   新环境  
操作系统: RedHat5.8 64位   redhat6.4 64位
数据库版本: Oracle 10.2.0.4 64位   oracle 11.2.0.4 64位

背景:之前有一套老的数据库rac是基于oracle10g搭建,跑了几年了。现在前端应用程序准备升级,考虑到前端应用程序使用的新数据库与老环境的数据库有一些差异,准备将新环境所用数据库导入到老环境中去,这里有一个跨版本导入的问题;另外一种方式就是将老环境数据库升级到与新环境一样的版本,考虑升级所带来各种潜在问题以及现场环境等因素。与项目负责人沟通后决定采用第一种方式。现将测试结果记录如下:

1、在oracle 10g环境中通过exp将11g数据库导入到本地,报错如下:

Encountering errors in Export logfile

EXP-00008: Oracle error # encountered

ORA-01455: converting column overflows integer datatype

2、在11g环境中用exp将导出数据,再通过imp user/password@10g远程的方式导入,报错如下:

IMP-00015: 由于对象已存在

说明:导入到10g中之前,确认10g没有任务相关用户对象,这种方式导致有一些表没有导入,估计是因为clob字段导致的。

3、在11g环境中用expdp并指定version将数据导出,传到10g中去,再通过impdp并指定version将数据导入,报错如下:

expdp user/password directory=impdp_dir dumpfile=file.dmp version=10.2.0.4(要导入到10g中的版本号)

impdp user/password directory=impdp_dir dumpfile=file.dmp version=10.2.0.4

ORA-39139: Data Pump does not support XMLTYPE objects in version 10.2.0.4 TABLE_DATA:"test"."table_name" will be skipped.

说明:这种方式有一张导入时直接跳过,因这张表中没有数据,直接将创建表的语句在10g中重新执行一下即可。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-11/125242.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款