您好,登錄后才能下訂單哦!
今天客戶在imp導入數據的時候遇到了下面的報錯信息
IMP-00051: Direct path exported dump file contains illegal column length
IMP-00008: unrecognized statement in the export file
這個報錯的原因與解決方法見如下官方文檔
歡迎大家加入ORACLE超級群:17115662 免費解決各種ORACLE問題,以后BLOG將遷移到http://www.htz.pw
ALERT: Direct Path Export (EXP) Corrupts The Dump If An Empty Table Partition Exists (文檔 ID 1604983.1)
修改時間:2013-12-19
類型:ALERT
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.
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
REFERENCES
BUG:13880226 - IMPORT FAIL WITH IMP-00051 AND IMP-00008
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。