Oracle 11g r2环境imp导入报IMP-00051与IMP-00008错误
Jun 07, 2016 pm 04:48 PM今天客户在imp导入数据的时候遇到了下面的报错信息IMP-00051: Direct path exported dump file contains illegal column lengthI
今天客户在imp导入数据的时候遇到了下面的报错信息
IMP-00051: Direct path exported dump file contains illegal column length
IMP-00008: unrecognized statement in the export file
这个报错的原因与解决方法见如下官方文档
ALERT: Direct Path Export (EXP) Corrupts The Dump If An Empty Table Partition Exists (文档 ID 1604983.1)
修改时间:2013-12-19
类型:ALERT
In this Document
APPLIES TO:
Oracle Database - Enterprise Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.
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
...
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
REFERENCES
BUG:13880226 - IMPORT FAIL WITH IMP-00051 AND IMP-00008
VMware+Linux+Oracle 10G RAC全程详细图解
在CentOS 6.4下安装Oracle 11gR2(x64)
Oracle 11gR2 在VMWare虚拟机中安装步骤
Debian 下 安装 Oracle 11g XE R2
Oracle 11gR2 在VMWare虚拟机中安装步骤
本文永久更新链接地址:

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Alter Table 문을 사용하여 MySQL에서 테이블을 어떻게 변경합니까?

MySQL의 문제를 해결하는 방법 공유 라이브러리를 열 수 없습니다.

Linux에서 MySQL을 실행합니다 (Phpmyadmin이있는 Podman 컨테이너가 포함되지 않음)

인기있는 MySQL GUI 도구는 무엇입니까 (예 : MySQL Workbench, Phpmyadmin)?

일반적인 취약점 (SQL 주입, 무차별 적 공격)에 대해 MySQL을 어떻게 보호합니까?
