一次断电引起的Oracle故障恢复-ora-600 2662故障---惜分飞

接手一个oracle恢复case,由于断电导致oracle数据库异常,现场人员进行了一系列的恢复成功,但是没有成功open库,我接手故障之后尝试做recover 报ORA-16433错误

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [oracle@xifenfei.com ~]$ sqlplus / ``as sysdba SQL*Plus: Release 11.2.0.4.0 Production ``on Sun May 10 09:27:51 2026 Copyright (c) 1982, 2013, Oracle. ``All rights reserved. Connected ``to``: Oracle ``Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining ``and Real Application Testing options SQL> SQL> recover ``database``; ORA-00283: recovery session canceled due ``to errors ORA-16433: The ``database must be opened ``in read``/write mode. |

根据经验这种错误一般是由于强制打开库失败导致,回溯oracle alert日志发现类似操作

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Fri May 08 18:47:59 2026 ALTER DATABASE OPEN RESETLOGS RESETLOGS is being ``done without consistancy checks. This may result in a corrupted database. The database should be recreated. RESETLOGS after incomplete recovery UNTIL CHANGE 138986145572 Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_ora_37813``.trc: ORA-00313: ``open failed ``for members of log group 1 of thread 1 ORA-00312: online log 1 thread 1: ``'/data/oracle/oradata/xff/redo01.log' ORA-27037: unable to obtain ``file status Linux-x86_64 Error: 2: No such ``file or directory Additional information: 3 Clearing online redo logfile 1 ``/data/oracle/oradata/xff/redo01``.log Clearing online log 1 of thread 1 sequence number 2389 Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_ora_37813``.trc: ORA-00313: ``open failed ``for members of log group 1 of thread 1 ORA-00312: online log 1 thread 1: ``'/data/oracle/oradata/xff/redo01.log' .................. Clearing online redo logfile 3 complete Resetting resetlogs activation ID 677485461 (0x28619b95) Online log ``/data/oracle/oradata/xff/redo01``.log: Thread 1 Group 1 was previously cleared Online log ``/data/oracle/oradata/xff/redo02``.log: Thread 1 Group 2 was previously cleared Online log ``/data/oracle/oradata/xff/redo03``.log: Thread 1 Group 3 was previously cleared Fri May 08 18:48:17 2026 Setting recovery target incarnation to 4 Fri May 08 18:48:17 2026 Assigning activation ID 677634815 (0x2863e2ff) Thread 1 opened at log sequence 1 ``Current log``# 1 seq# 1 mem# 0: /data/oracle/oradata/xff/redo01.log Successful ``open of redo thread 1 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not ``set Fri May 08 18:48:18 2026 SMON: enabling cache recovery Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_ora_37813``.trc (incident=170321): ORA-00600: internal error code, arguments: [2662], [32], [1547192107], [32], [1547212241], [12583040], [] Fri May 08 18:48:20 2026 Use ADRCI or Support Workbench to package the incident. See Note 411.1 at My Oracle Support ``for error and packaging details. Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_ora_37813``.trc: ORA-00600: internal error code, arguments: [2662], [32], [1547192107], [32], [1547212241], [12583040] Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_ora_37813``.trc: ORA-00600: internal error code, arguments: [2662], [32], [1547192107], [32], [1547212241], [12583040] Error 600 happened during db ``open``, shutting down database USER (ospid: 37813): terminating the instance due to error 600 Instance terminated by USER, pid = 37813 ORA-1092 signalled during: ALTER DATABASE OPEN RESETLOGS... |

对于这种情况,先重建控制文件

|------------------------------------------------|
| SQL> @/tmp/rectl.sql Control file created. |

尝试recover database恢复

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ALTER DATABASE RECOVER database Media Recovery Start ``started logmerger process Parallel Media Recovery started with 96 slaves Sun May 10 09:33:03 2026 Recovery of Online Redo Log: Thread 1 Group 2 Seq 2 Reading mem 0 ``Mem``# 0: /data/oracle/oradata/xff/redo02.log Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_pr00_250074``.trc (incident=254397): ORA-00353: log corruption near block 3 change 138986165586 ``time 05``/08/2026 18:55:37 ORA-00312: online log 2 thread 1: ``'/data/oracle/oradata/xff/redo02.log' Incident details ``in``: ``/data/oracle/diag/rdbms/xff/xff/incident/incdir_254397/xff_pr00_250074_i254397``.trc Sun May 10 09:33:04 2026 Media Recovery failed with error 399 Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_pr00_250074``.trc: ORA-00283: recovery session canceled due to errors ORA-00399: corrupt change description ``in redo log ORA-00353: log corruption near block 3 change 138986165586 ``time 05``/08/2026 18:55:37 ORA-00312: online log 2 thread 1: ``'/data/oracle/oradata/xff/redo02.log' ORA-10877 signalled during: ALTER DATABASE RECOVER database ... Sun May 10 09:33:04 2026 Sweep [inc][254397]: completed Errors ``in file /data/oracle/diag/rdbms/xff/xff/trace/xff_m000_250348``.trc (incident=255173): ORA-00353: log corruption near block 3 change 138986165586 ``time 05``/08/2026 18:55:37 ORA-00312: online log 2 thread 1: ``'/data/oracle/oradata/xff/redo02.log' Errors ``in file /data/oracle/diag/rdbms/xff/xff/incident/incdir_254397/xff_m000_250348_i254397_a``.trc: ORA-00399: corrupt change description ``in redo log ORA-00353: log corruption near block 3 change 138986165586 ``time 05``/08/2026 18:55:37 ORA-00312: online log 2 thread 1: ``'/data/oracle/oradata/xff/redo02.log' Errors ``in file /data/oracle/diag/rdbms/xff/xff/incident/incdir_254397/xff_m000_250348_i254397_a``.trc: ORA-00399: corrupt change description ``in redo log ORA-00353: log corruption near block 3 change 138986165586 ``time 05``/08/2026 18:55:37 ORA-00312: online log 2 thread 1: ``'/data/oracle/oradata/xff/redo02.log' Sun May 10 09:34:05 2026 |

由于无法正常recover 操作,数据库需要强制打开,考虑到之前该库open的过程有ORA-600 2662错误,这次在打开之前使用Patch_SCN调整SCN(关于Patch_SCN文章:Patch_SCN for Linux 功能完善

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [oracle@xifenfei.com tmp]$ .``/Patch_SCN 249756 0x205D38954E Successfully obtained address automatically: 0x6001ae70 Original Oracle SCN at Address 0x6001ae70: 0x0 Are you sure you want to modify Oracle SCN? (``yes``/no``): ``yes New SCN at Address 0x6001ae70: 0x205d38954e Oracle SCN successfully modified. |

然后数据库顺利打开

在expdp导出数据过程中遇到了硬件错误

为了安全性采用库只读情况下exp进行导出,运气不错所有数据顺利导出,完成本次数据恢复任务

相关推荐
惜分飞1 天前
Oracle故障第一现场被恢复混乱的数据库恢复---惜分飞
oracle恢复·obet scn·patch_scn
惜分飞3 个月前
不当恢复truncate数据导致数据库不能open处理---惜分飞
oracle恢复·obet resetlogs·obet bbed
惜分飞5 个月前
Oracle Recovery Tools 使用说明
数据库·oracle·oracle恢复·替代bbed·oracle恢复工具
惜分飞7 个月前
raid恢复之后数据库故障处理(ora-01200,ORA-26101,ORA-600)---惜分飞
数据库·sql·oracle·oracle恢复·raid恢复
惜分飞1 年前
Oracle Recovery Tools工具一键解决ORA-00376 ORA-01110故障(文件offline)---惜分飞
oracle恢复
惜分飞2 年前
ntfs MFT损坏(ntfs文件系统故障)导致oracle异常恢复---惜分飞
数据库·oracle恢复
惜分飞2 年前
勒索解密后oracle无法启动故障处理----惜分飞
oracle恢复·dbv-00107