eygle.com   eygle.com
eygle.com eygle
eygle.com  
 

« 新年献礼:《深入解析Oracle》一书开源下载 | Blog首页 | 《深入解析Oracle》修订版获ITPUB投票榜首 »

Oracle数据恢复 - 注意Expdp导出文件可能初始写入损坏

最近一个客户遭遇到了一次非常意外的数据损失,客户在维护时重建系统,先通过expdp备份了数据,结果当进行导入恢复数据时,发现部分重要的数据表无法恢复,出现错误。这个案例提示我们:不能尽信expdp等导出文件备份,必须通过多重手段协同,全面保障数据安全。

导入DMP文件时出现的错误大致如下:

Import: Release 11.2.0.1.0 - Production on 星期日 12月 30 15:37:27 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
;;;
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning and Real Application Testing options
已成功加载/卸载了主表 "CW9999"."SYS_IMPORT_TABLE_02"
启动 "CW9999"."SYS_IMPORT_TABLE_02":  cw9999/******** parfile=data10.par
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA
ORA-31693: 表数据对象 "CW9999"."PSXM" 无法加载/卸载并且被跳过, 错误如下:
ORA-02354: 导出/导入数据时出错
ORA-02368: the following file is not valid for this load operation
ORA-02369: internal number in header in file H:\DMP\bj.dmp is not valid
ORA-31693: 表数据对象 "CW9999"."PSMOD" 无法加载/卸载并且被跳过, 错误如下:
ORA-02354: 导出/导入数据时出错
ORA-39776: 加载表 "CW9999"."SPMOD" 时出现致命的直接路径 API 错误
ORA-00600: 内部错误代码, 参数: [klaprs_11], [60], [0], [], [], [], [], [], [], [], [], []

注意这其中最关键的错误是ORA-02369,提示DMP文件中的内部数字标记非法,这其实说明导出文件损坏了,以下是该错误的官方解释:

ORA-02369 internal number in header in file string is not valid
Cause: If the dump files were transferred over, verify the transfer operation was done correctly.
Action:

The specified file could not be used for this load because the internal number in the header was not valid.

在MOS上的Note:785473.1 上有提示,如果文件通过ftp等方式传输,可能丢失了内容,可以尝试重传,但是这种概率极低,事实上是,在执行导出时文件就损坏了。这种情况下,不可避免的要丢失数据。在MOS上,有几十个与此错误有关的SR。

在这个客户案例中,部分数据表是完好的,可以导入,但是其中一些表出错,无法导入还原到数据库中。

在这种情况下,极限的数据挽救情况是:通过ODU、DUL等工具,可以扫描DMP文件,尝试恢复其中完好的数据,但是通常无法做到完好无损了。

技术提示:ORA-02369 不是指dmp文件的开始部分损坏,对于DMP文件来说,每个表开始部分都存在一个Header信息,这个错误是指对于指定表,这个信息损坏。在这个案例中,可能是并行导出导致的写损坏。

案例警示:在重要数据备份中,不能仅采用单一手段,多重手段结合,才能确保数据万无一失


历史上的今天...
    >> 2011-01-07文章:
    >> 2009-01-07文章:
    >> 2008-01-07文章:
           Oracle 10.2.0.3的ORA-1461错误
    >> 2006-01-07文章:
           黑客为什么?
           Oracle bloggers on frappr
    >> 2005-01-07文章:

无觅

By eygle on 2014-01-07 09:30 | Comments (0) | Backup&Recovery | 3147 |


CopyRight © 2004~2020 云和恩墨,成就未来!, All rights reserved.
数据恢复·紧急救援·性能优化 云和恩墨 24x7 热线电话:400-600-8755 业务咨询:010-59007017-7040 or 7037 业务合作: marketing@enmotech.com