ITPUB论坛-中国最专业的IT技术社区

 找回密码
 注册
查看: 4354|回复: 1

[笔记] 【故障处理】imp-00051,imp-00008

[复制链接]
认证徽章
论坛徽章:
10
青年奥林匹克运动会-高尔夫
日期:2014-09-10 14:54:51火眼金睛
日期:2017-02-06 01:02:33人气徽章
日期:2016-11-09 15:56:29目光如炬
日期:2016-10-30 22:00:00罗罗诺亚·索隆
日期:2016-10-17 12:26:14目光如炬
日期:2016-10-16 22:00:00火眼金睛
日期:2016-11-30 22:00:00目光如炬
日期:2017-01-22 22:00:00美羊羊
日期:2015-04-12 10:40:59火眼金睛
日期:2017-02-28 22:00:00
发表于 2017-1-8 11:51 | 显示全部楼层 |阅读模式
【故障处理】imp-00051,imp-00008
1.1  BLOG文档结构图
1.2  故障分析及解决过程
imp导入报错:
IMP-00051: Direct path exported dump file contains illegal column length
IMP-00008: unrecognized statement in the export file
IMP-00009: abnormal end of export file
[oracle@lhrdb ~]$ oerr imp 51
00051, 00000, "Direct path exported dump file contains illegal column length"
// *Cause:  An invalid column length was encountered while processing column
//          pieces."
// *Action: Check to make sure the export file is not corrupted, or else
//          report this to Oracle Worldwide Support as an Import/Export
//          internal bug and submit the
//          export file.
由于使用了direct=y的方式导出,所以导入的时候报错。MOS上是针对分区表的某一个空的分区导入的时候会报该错,但是客户这边的表不是分区表,dmp文件太大,不能做具体原因分析。给出的解决方案为:针对报错的表单独导出,并采用parfile参数。
[ZFZHLHRDB1racle]:/oracle>more /tmp/scottfile.par
tables=scott.emp,scott.dept
exp \'/ AS SYSDBA\'   file=/tmp/test_query_lhr_scott_01.dmp  parfile=/tmp/scottfile.par log=/tmp/test_query_lhr_scott_01.log
参考的MOS文档:
Traditional Import (IMP) Raises Error IMP-51 Direct Path Exported Dump File Contains Illegal Column Length (文档 ID 1403865.1)
ALERT Direct Path Export (EXP) Corrupts The Dump If An Empty Table Partition Exists (文档 ID 1604983.1)
The traditional export utility is de-supported beginning with the version 11g and is no more maintained.
exp和imp从11g开始不再维护。
1.3  MOS1.3.1  ALERT Direct Path Export (EXP) Corrupts The Dump If An Empty Table Partition Exists (文档 ID 1604983.1)
In this Document
Description
Occurrence
Symptoms
Workaround
History
References


APPLIES TO:Oracle Database - Enterprise Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.
***Checked for relevance on 31-Oct-2016***DESCRIPTION
You performed a direct path export (table, schema or full) using the traditional export utility (EXP). If the exported objects include an empty table partition, then the export dump is corrupt and cannot be imported.
OCCURRENCE
Only exp versions >= 11.2.0.1 are affected. The traditional export utility is de-supported beginning with the version 11g and is no more maintained.
SYMPTOMS
During import you may see one of the following issues:
IMP-00009: abnormal end of export file
Or:
IMP-00051: Direct path exported dump file contains illegal column length
IMP-00008: unrecognized statement in the export file

Or:
Import silently skips a part of the dump, tables are missing and later constraints cannot be created.
This is below demonstrated with a simple test:
connect test
create table part001
(
   col001  number,
   col002  varchar2(100)
)
partition by range (col001)
(
   partition p001 values less than (10),
   partition p002 values less than (100),
   partition p003 values less than (1000)
);

insert into part001 values (5, 'Text 5');
insert into part001 values (500, 'Text 500');
commit;

#> exp test/password file=part001.dmp tables=part001 direct=y

This will show:
About to export specified tables via Direct Path ...
. . exporting table                        PART001
. . exporting partition                           P001          1 rows exported
. . exporting partition                           P002          0 rows exported
. . exporting partition                           P003          1 rows exported
Export terminated successfully without warnings.

but the import breaks with error:
. importing TEST's objects into TEST
. . importing partition               "PART001":"P001"          1 rows imported
. . importing partition               "PART001":"P002"
IMP-00009: abnormal end of export file
Import terminated successfully with warnings.

WORKAROUND
If you perform direct path exports using a version greater or equal 11.2.0.1 and you see the messages:
About to export specified tables via Direct Path ...
...
. . exporting partition                     <partition_name>           0 rows exported
...

in the export output (or log file), then you obtain a corrupt dump. You can verify the dump with the commands:
#> imp user/passw full=y

or:

#> imp user/passw full=y show=y
which will show you one of the behaviors listed above.
To workaround this please use:
- conventional path export (exp direct=n)
Or:
- materialize the empty partitions before running direct path exports:
connect / as sysdba
exec dbms_space_admin.materialize_deferred_segments (schema_name => 'TEST', table_name => 'PART001', partition_name => 'P002');

Or:
- DataPump export (expdp)
HISTORY
[03-DEC-2013] - Document created
REFERENCESBUG:13880226 - IMPORT FAIL WITH IMP-00051 AND IMP-00008
1.3.2  Traditional Import (IMP) Raises Error IMP-51 Direct Path Exported Dump File Contains Illegal Column Length (文档 ID 1403865.1)
In this Document
Symptoms
Cause
Solution


APPLIES TO:Oracle Server - Enterprise Edition - Version 11.2.0.2 and later
Information in this document applies to any platform.
SYMPTOMS
An original import of an export dump file created from an 11.2.0.2 database with DIRECT=Y fails with:
IMP-00051: Direct path exported dump file contains illegal column length
CAUSE
The exact cause is undetermined in this case.
SOLUTION
Instead of using the traditional export/import, use the DataPump export/import as a workaround.


About Me
...............................................................................................................................
● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用
● 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新
● 本文pdf版及小麦苗云盘地址:http://blog.itpub.net/26736162/viewspace-1624453/
● QQ群:230161599     微信群:私聊
● 联系我请加QQ好友(642808185),注明添加缘由
● 于 2017-01-05 09:00 ~ 2017-01-05 19:00 在农行完成
● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解
● 版权所有,欢迎分享本文,转载请保留出处
...............................................................................................................................
拿起手机使用微信客户端扫描下边的左边图片来关注小麦苗的微信公众号:xiaomaimiaolhr,扫描右边的二维码加入小麦苗的QQ群,学习最实用的数据库技术。
  

非常感谢各位朋友支持小麦苗。
论坛徽章:
0
发表于 2017-1-14 15:50 | 显示全部楼层
支持一下

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

TOP技术积分榜 社区积分榜 徽章 电子杂志 团队 统计 虎吧 老博客 知识索引树 读书频道 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档 | IT博客
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛 | SAP ERP系统
CopyRight 1999-2011 itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有 联系我们 网站律师 隐私政策 知识产权声明
京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:1101082001 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表