标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 kfed MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-01110 ORA-01555 ORA-01578 ORA-08103 ORA-600 2131 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 Oracle 恢复 ORACLE恢复 ORACLE数据库恢复 oracle 比特币 OSD-04016 YOUR FILES ARE ENCRYPTED 勒索恢复 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (102)
- 数据库 (1,670)
- DB2 (22)
- MySQL (73)
- Oracle (1,532)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (21)
- ORA-xxxxx (159)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (14)
- ORACLE 21C (3)
- Oracle 23ai (7)
- Oracle ASM (65)
- Oracle Bug (8)
- Oracle RAC (52)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (28)
- Oracle备份恢复 (560)
- Oracle安装升级 (91)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (78)
- PostgreSQL (18)
- PostgreSQL恢复 (6)
- SQL Server (27)
- SQL Server恢复 (8)
- TimesTen (7)
- 达梦数据库 (2)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (37)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (20)
-
最近发表
- ORA-600 krse_arc_complete.4
- Oracle 19c 202410补丁(RUs+OJVM)
- ntfs MFT损坏(ntfs文件系统故障)导致oracle异常恢复
- .mkp扩展名oracle数据文件加密恢复
- 清空redo,导致ORA-27048: skgfifi: file header information is invalid
- A_H_README_TO_RECOVER勒索恢复
- 通过alert日志分析客户自行对一个数据库恢复的来龙去脉和点评
- ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的SERVICE_NAME
- ORA-01092 ORA-00604 ORA-01558故障处理
- ORA-65088: database open should be retried
- Oracle 19c异常恢复—ORA-01209/ORA-65088
- ORA-600 16703故障再现
- 数据库启动报ORA-27102 OSD-00026 O/S-Error: (OS 1455)
- .[metro777@cock.li].Elbie勒索病毒加密数据库恢复
- 应用连接错误,初始化mysql数据库恢复
- RAC默认服务配置优先节点
- Oracle 19c RAC 替换私网操作
- 监听报TNS-12541 TNS-12560 TNS-00511错误
- drop tablespace xxx including contents恢复
- Linux 8 修改网卡名称
标签归档:ORA-00704 ORA-01555
resetlogs失败故障恢复-ORA-01555
客户数据库resetlogs报错
Tue Dec 19 15:21:23 2023 ALTER DATABASE MOUNT Successful mount of redo thread 1, with mount id 1683789043 Database mounted in Exclusive Mode Lost write protection disabled Completed: ALTER DATABASE MOUNT Tue Dec 19 15:22:01 2023 alter database open resetlogs RESETLOGS is being done without consistancy checks. This may result in a corrupted database. The database should be recreated. ORA-1248 signalled during: alter database open resetlogs... Tue Dec 19 16:16:26 2023 alter database datafile 83 offline Completed: alter database datafile 83 offline Tue Dec 19 16:19:13 2023 alter database open resetlogs RESETLOGS is being done without consistancy checks. This may result in a corrupted database. The database should be recreated. Archived Log entry 50 added for thread 1 sequence 3657135 ID 0x5d907698 dest 1: Tue Dec 19 16:20:01 2023 Errors in file /oracle/app/diag/rdbms/orcl/orcl/trace/orcl_ora_94696.trc: ORA-00333: 重做日志读取块 8806400 计数 16384 出错 ORA-00312: 联机日志 2 线程 1: '/data/oradata/orcl/redo2.log' ORA-27072: 文件 I/O 错误 Linux-x86_64 Error: 25: Inappropriate ioctl for device Additional information: 4 Additional information: 8806400 Additional information: 4325376 Errors in file /oracle/app/diag/rdbms/orcl/orcl/trace/orcl_ora_94696.trc: ORA-00333: 重做日志读取块 8806400 计数 16384 出错 ARCH: All Archive destinations made inactive due to error 333 ARCH: Closing local archive destination LOG_ARCHIVE_DEST_1: '/data/arch/1_3657136_874715183.dbf' (error 333) (orcl) Committing creation of archivelog '/data/arch/1_3657136_874715183.dbf' (error 333) Tue Dec 19 16:20:46 2023 Archived Log entry 51 added for thread 1 sequence 3657132 ID 0x5d907698 dest 1: Tue Dec 19 16:21:28 2023 Archived Log entry 52 added for thread 1 sequence 3657133 ID 0x5d907698 dest 1: Tue Dec 19 16:22:13 2023 Archived Log entry 53 added for thread 1 sequence 3657134 ID 0x5d907698 dest 1: RESETLOGS after incomplete recovery UNTIL CHANGE 161052517347 Resetting resetlogs activation ID 1569748632 (0x5d907698) Tue Dec 19 16:23:43 2023 Setting recovery target incarnation to 3 Tue Dec 19 16:23:43 2023 Assigning activation ID 1683789043 (0x645c94f3) LGWR: STARTING ARCH PROCESSES Tue Dec 19 16:23:43 2023 ARC0 started with pid=40, OS id=5391 ARC0: Archival started LGWR: STARTING ARCH PROCESSES COMPLETE ARC0: STARTING ARCH PROCESSES Thread 1 advanced to log sequence 2 (thread open) Tue Dec 19 16:23:44 2023 ARC1 started with pid=41, OS id=5393 Tue Dec 19 16:23:44 2023 ARC2 started with pid=42, OS id=5395 ARC1: Archival started Tue Dec 19 16:23:44 2023 ARC3 started with pid=43, OS id=5397 ARC2: Archival started ARC1: Becoming the 'no FAL' ARCH ARC1: Becoming the 'no SRL' ARCH ARC2: Becoming the heartbeat ARCH Thread 1 opened at log sequence 2 Current log# 2 seq# 2 mem# 0: /data/oradata/orcl/redo2.log Successful open of redo thread 1 Tue Dec 19 16:23:44 2023 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set Tue Dec 19 16:23:44 2023 SMON: enabling cache recovery Tue Dec 19 16:23:44 2023 NSA2 started with pid=44, OS id=5399 ORA-01555 caused by SQL statement below (SQL ID: 4krwuz0ctqxdt, SCN: 0x0025.7f7d42df): select ctime, mtime, stime from obj$ where obj# = :1 Errors in file /oracle/app/diag/rdbms/orcl/orcl/trace/orcl_ora_94696.trc: ORA-00704: 引导程序进程失败 ORA-00704: 引导程序进程失败 ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01555: 快照过旧: 回退段号 27 (名称为 "_SYSSMU27_4233559991$") 过小 Errors in file /oracle/app/diag/rdbms/orcl/orcl/trace/orcl_ora_94696.trc: ORA-00704: 引导程序进程失败 ORA-00704: 引导程序进程失败 ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01555: 快照过旧: 回退段号 27 (名称为 "_SYSSMU27_4233559991$") 过小 Error 704 happened during db open, shutting down database USER (ospid: 94696): terminating the instance due to error 704 Instance terminated by USER, pid = 94696 ORA-1092 signalled during: alter database open resetlogs... opiodr aborting process unknown ospid (94696) as a result of ORA-1092
通过以上信息,可以的出来以下结论:
1. 客户的硬件或者文件系统可能有问题,通过系统日志进一步确认底层异常
Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Sense Key : Medium Error [current] Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Add. Sense: Unrecovered read error Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] CDB: Read(10): 28 00 47 bc ff c0 00 01 00 00 Dec 19 08:28:38 tdb2 kernel: end_request: critical medium error, dev sdb, sector 1203568576 Dec 19 08:28:38 tdb2 kernel: end_request: critical medium error, dev dm-3, sector 1203568576 Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Sense Key : Medium Error [current] Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Add. Sense: Unrecovered read error Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] CDB: Read(10): 28 00 47 bd 00 c0 00 01 00 00 Dec 19 08:28:38 tdb2 kernel: end_request: critical medium error, dev sdb, sector 1203568832 Dec 19 08:28:38 tdb2 kernel: end_request: critical medium error, dev dm-3, sector 1203568832 Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Sense Key : Medium Error [current] Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] Add. Sense: Unrecovered read error Dec 19 08:28:38 tdb2 kernel: sd 7:0:0:0: [sdb] CDB: Read(10): 28 00 47 bd 00 80 00 00 08 00 Dec 19 08:28:38 tdb2 kernel: end_request: critical medium error, dev sdb, sector 1203568768 Dec 19 08:28:38 tdb2 kernel: end_request: critical medium error, dev dm-3, sector 1203568768 Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Sense Key : Medium Error [current] Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Add. Sense: Unrecovered read error Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] CDB: Read(10): 28 00 9b 1a 28 20 00 01 00 00 Dec 19 16:20:01 tdb2 kernel: end_request: critical medium error, dev sdb, sector 2602182688 Dec 19 16:20:01 tdb2 kernel: end_request: critical medium error, dev dm-3, sector 2602182688 Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Sense Key : Medium Error [current] Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Add. Sense: Unrecovered read error Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] CDB: Read(10): 28 00 9b 1a 29 20 00 01 00 00 Dec 19 16:20:01 tdb2 kernel: end_request: critical medium error, dev sdb, sector 2602182944 Dec 19 16:20:01 tdb2 kernel: end_request: critical medium error, dev dm-3, sector 2602182944 Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Sense Key : Medium Error [current] Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] Add. Sense: Unrecovered read error Dec 19 16:20:01 tdb2 kernel: sd 7:0:0:0: [sdb] CDB: Read(10): 28 00 9b 1a 29 00 00 00 08 00 Dec 19 16:20:01 tdb2 kernel: end_request: critical medium error, dev sdb, sector 2602182912 Dec 19 16:20:01 tdb2 kernel: end_request: critical medium error, dev dm-3, sector 2602182912
2. 数据库在强制拉库的时候,很可能是屏蔽了一致性,导致文件头scn过小
3. 在resetlogs之前,先offline了83号文件,这个将导致该文件的reseltogs scn和其他文件不一致,通过Oracle数据库异常恢复检查脚本(Oracle Database Recovery Check)
这个库由于客户在resetlogs之前offline了数据文件,导致一些麻烦,先使用Oracle Recovery Tools修改resetlogs scn
然后重建ctl,修改scn,打开数据库
hcheck检测字典一切正常
HCheck Version 07MAY18 on 26-12月-2023 18:44:20 ---------------------------------------------- Catalog Version 11.2.0.1.0 (1102000100) db_name: ORCL Catalog Fixed Procedure Name Version Vs Release Timestamp Result ------------------------------ ... ---------- -- ---------- -------------- ------ .- LobNotInObj ... 1102000100 <= *All Rel* 12/26 18:44:20 PASS .- MissingOIDOnObjCol ... 1102000100 <= *All Rel* 12/26 18:44:20 PASS .- SourceNotInObj ... 1102000100 <= *All Rel* 12/26 18:44:20 PASS .- IndIndparMismatch ... 1102000100 <= 1102000100 12/26 18:44:21 PASS .- InvCorrAudit ... 1102000100 <= 1102000100 12/26 18:44:21 PASS .- OversizedFiles ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- PoorDefaultStorage ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- PoorStorage ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- PartSubPartMismatch ... 1102000100 <= 1102000100 12/26 18:44:21 PASS .- TabPartCountMismatch ... 1102000100 <= *All Rel* 12/26 18:44:21 *** 2023-12-26 18:44:21.507 PASS .- OrphanedTabComPart ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- MissingSum$ ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- MissingDir$ ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- DuplicateDataobj ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- ObjSynMissing ... 1102000100 <= *All Rel* 12/26 18:44:21 PASS .- ObjSeqMissing ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedUndo ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedIndex ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedIndexPartition ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedIndexSubPartition ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedTable ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedTablePartition ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedTableSubPartition ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- MissingPartCol ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedSeg$ ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- OrphanedIndPartObj# ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- DuplicateBlockUse ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- FetUet ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- Uet0Check ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- ExtentlessSeg ... 1102000100 <= 1102000100 12/26 18:44:22 PASS .- SeglessUET ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadInd$ ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadTab$ ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadIcolDepCnt ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- ObjIndDobj ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- TrgAfterUpgrade ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- ObjType0 ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadOwner ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- StmtAuditOnCommit ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadPublicObjects ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadSegFreelist ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadDepends ... 1102000100 <= *All Rel* 12/26 18:44:22 *** 2023-12-26 18:44:22.571 PASS .- CheckDual ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- ObjectNames ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- BadCboHiLo ... 1102000100 <= *All Rel* 12/26 18:44:22 PASS .- ChkIotTs ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- NoSegmentIndex ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- BadNextObject ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- DroppedROTS ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- FilBlkZero ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- DbmsSchemaCopy ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- OrphanedObjError ... 1102000100 > 1102000000 12/26 18:44:23 PASS .- ObjNotLob ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- MaxControlfSeq ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- SegNotInDeferredStg ... 1102000100 > 1102000000 12/26 18:44:23 PASS .- SystemNotRfile1 ... 1102000100 > 902000000 12/26 18:44:23 *** 2023-12-26 18:44:23.779 PASS .- DictOwnNonDefaultSYSTEM ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- OrphanTrigger ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS .- ObjNotTrigger ... 1102000100 <= *All Rel* 12/26 18:44:23 PASS --------------------------------------- 26-12月-2023 18:44:23 Elapsed: 3 secs --------------------------------------- Found 0 potential problem(s) and 0 warning(s)
然后增加temp,导出数据数据,完成本次数据库救援
Oracle 19C 报ORA-704 ORA-01555故障处理
异常断电导致数据库无法启动,尝试对数据文件进行recover操作,报ORA-00283 ORA-00742 ORA-00312错误,由于redo写丢失无法正常应用
D:\check_db>sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on 星期日 7月 30 07:49:19 2023 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. 连接到: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 SQL> recover datafile 1; ORA-00283: 恢复会话因错误而取消 ORA-00742: 日志读取在线程 1 序列 9274 块 18057 中检测到写入丢失情况 ORA-00312: 联机日志 1 线程 1: 'D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO01.LOG'
屏蔽数据一致性,尝试强制打开库,报ORA-00604,ORA-00704,ORA-01555错误
SQL> alter database open resetlogs; alter database open resetlogs * 第 1 行出现错误: ORA-00603: ORACLE server session terminated by fatal error ORA-01092: ORACLE instance terminated. Disconnection forced ORA-00704: bootstrap process failure ORA-00704: bootstrap process failure ORA-00604: error occurred at recursive SQL level 1 ORA-01555: snapshot too old: rollback segment number 9 with name "_SYSSMU9_4165470211$" too small 进程 ID: 4036 会话 ID: 2277 序列号: 40707
alert日志对应错误
2023-07-30T06:54:43.457383+08:00 .... (PID:5836): Clearing online redo logfile 1 complete .... (PID:5836): Clearing online redo logfile 2 complete .... (PID:5836): Clearing online redo logfile 3 complete Resetting resetlogs activation ID 3572089731 (0xd4e9c383) Online log D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO01.LOG: Thread 1 Group 1 was previously cleared Online log D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO02.LOG: Thread 1 Group 2 was previously cleared Online log D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO03.LOG: Thread 1 Group 3 was previously cleared 2023-07-30T06:54:43.863676+08:00 Setting recovery target incarnation to 2 2023-07-30T06:54:44.816771+08:00 Ping without log force is disabled: instance mounted in exclusive mode. Endian type of dictionary set to little 2023-07-30T06:54:44.957395+08:00 Assigning activation ID 3664275149 (0xda6866cd) 2023-07-30T06:54:44.957395+08:00 TT00 (PID:4640): Gap Manager starting 2023-07-30T06:54:45.004305+08:00 Redo log for group 1, sequence 1 is not located on DAX storage 2023-07-30T06:54:46.176153+08:00 Thread 1 opened at log sequence 1 Current log# 1 seq# 1 mem# 0: D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO01.LOG Successful open of redo thread 1 2023-07-30T06:54:46.191771+08:00 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set stopping change tracking 2023-07-30T06:54:46.223036+08:00 TT03 (PID:1816): Sleep 5 seconds and then try to clear SRLs in 2 time(s) 2023-07-30T06:54:46.332398+08:00 ORA-01555 caused by SQL statement below (SQL ID: 4krwuz0ctqxdt, SCN: 0x0000000017b852a7 ): 2023-07-30T06:54:46.332398+08:00 select ctime, mtime, stime from obj$ where obj# = :1 2023-07-30T06:54:46.332398+08:00 Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_ora_5836.trc: ORA-00704: 引导程序进程失败 ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01555: 快照过旧: 回退段号 9 (名称为 "_SYSSMU9_4165470211$") 过小 2023-07-30T06:54:46.332398+08:00 Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_ora_5836.trc: ORA-00704: 引导程序进程失败 ORA-00704: 引导程序进程失败 ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01555: 快照过旧: 回退段号 9 (名称为 "_SYSSMU9_4165470211$") 过小 2023-07-30T06:54:46.348028+08:00 Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_ora_5836.trc: ORA-00704: 引导程序进程失败 ORA-00704: 引导程序进程失败 ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01555: 快照过旧: 回退段号 9 (名称为 "_SYSSMU9_4165470211$") 过小 Error 704 happened during db open, shutting down database Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_ora_5836.trc (incident=474502): ORA-00603: ORACLE 服务器会话因致命错误而终止 ORA-01092: ORACLE 实例终止。强制断开连接 ORA-00704: 引导程序进程失败 ORA-00704: 引导程序进程失败 ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01555: 快照过旧: 回退段号 9 (名称为 "_SYSSMU9_4165470211$") 过小 Incident details in: D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\incident\incdir_474502\xff_ora_5836_i474502.trc 2023-07-30T06:54:47.785549+08:00 opiodr aborting process unknown ospid (5836) as a result of ORA-603 2023-07-30T06:54:47.816792+08:00 ORA-603 : opitsk aborting process License high water mark = 6 USER (ospid: (prelim)): terminating the instance due to ORA error
这类错误比较常见,参考以前类似恢复:
在数据库open过程中常遇到ORA-01555汇总
数据库open过程遭遇ORA-1555对应sql语句补充
Oracle Recovery Tools恢复—ORA-00704 ORA-01555故障
使用_allow_resetlogs_corruption导致ORA-00704/ORA-01555故障
对于本次故障,通过Oracle Recovery Tools工具快速处理
open数据库成功
SQL> alter database open; 数据库已更改。 SQL> SQL> SQL> select status,count(1) from v$datafile group by status; STATUS COUNT(1) -------------- ---------- SYSTEM 1 ONLINE 61
存储强制拉lun导致数据库异常恢复
通过存储工程师强制拉起来lun(清除掉了cache),但是数据库无法正常mount
Fri Sep 30 17:22:57 BEIST 2022 ALTER DATABASE MOUNT Fri Sep 30 17:22:57 BEIST 2022 This instance was first to mount Fri Sep 30 17:22:58 BEIST 2022 Starting background process ASMB ASMB started with pid=25, OS id=12976304 Starting background process RBAL RBAL started with pid=26, OS id=12779520 Fri Sep 30 17:23:02 BEIST 2022 SUCCESS: diskgroup DATA was mounted Fri Sep 30 17:23:06 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/udump/xifenfei2_ora_14549110.trc: ORA-00600: internal error code, arguments: [kccpb_sanity_check_2], [423012], [422765], [0x000000000], [], [], [], [] Fri Sep 30 17:23:07 BEIST 2022 ORA-600 signalled during: ALTER DATABASE MOUNT... Fri Sep 30 17:23:07 BEIST 2022 Trace dumping is performing id=[cdmp_20220930172307] Fri Sep 30 17:23:09 BEIST 2022 Shutting down instance (abort) License high water mark = 1 Instance terminated by USER, pid = 9175148
可以要求保护第一现场,把asm中的数据恢复到文件系统中,然后进行恢复,由于客户是10g的环境,无法直接使用asmcmd中的cp实现此项操作,数据库也没有mount成功(无法使用rman的copy),考虑使用oracle的amdu实现此项操作需求.在拷贝过程中报AMDU-00204报错
root@xifenfei2:/recover/amduo#./amdu -diskstring '/dev/rhdiskpower*' -extract data.298 -noreport amdu_2022_10_01_14_25_31/ AMDU-00204: file not found; arguments: [3] [DATA] LEM-00031: Error encountered in lempgmh after calling lmserr.
通过dbv校验拷贝出来的数据文件
racle@xifenfei2:/recover#dbv file=/recover/amduo/amdu_2022_10_01_14_25_31/DATA_298.f DBVERIFY: Release 10.2.0.5.0 - Production on Sat Oct 1 14:36:50 2022 Copyright (c) 1982, 2007, Oracle. All rights reserved. DBVERIFY - Verification starting : FILE = /recover/amduo/amdu_2022_10_01_14_33_26/DATA_298.f DBVERIFY - Verification complete Total Pages Examined : 262144 Total Pages Processed (Data) : 0 Total Pages Failing (Data) : 0 Total Pages Processed (Index): 0 Total Pages Failing (Index): 0 Total Pages Processed (Other): 262143 Total Pages Processed (Seg) : 0 Total Pages Failing (Seg) : 0 Total Pages Empty : 1 Total Pages Marked Corrupt : 0 Total Pages Influx : 0 Highest block SCN : 121293100 (0.121293100)
确认此报错(AMDU-00204 LEM-00031)对于拷贝出来的数据文件无直接影响,可以忽略,拷贝出来所有文件进行重建ctl,报ORA-01159错误
SQL> CREATE CONTROLFILE REUSE DATABASE "xifenfei" NORESETLOGS NOARCHIVELOG 2 MAXLOGFILES 50 MAXLOGMEMBERS 5 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 226 LOGFILE group 5 '/recover/df/DATA_262.f' size 200M , group 2 '/recover/df/DATA_266.f' size 200M , group 1 '/recover/df/DATA_267.f' size 200M , group 3 '/recover/df/DATA_281.f' size 200M , group 4 '/recover/df/DATA_282.f' size 200M , group 6 '/recover/df/DATA_283.f' size 200M DATAFILE '/recover/df/DATA_295.f', '/recover/df/DATA_298.f', '/recover/df/DATA_272.f', '/recover/df/DATA_273.f', '/recover/df/DATA_296.f', '/recover/df/DATA_274.f', '/recover/df/DATA_276.f', '/recover/df/DATA_277.f', '/recover/df/DATA_275.f', '/recover/df/DATA_279.f', '/recover/df/DATA_278.f', '/recover/df/DATA_288.f', '/recover/df/DATA_269.f', '/recover/df/DATA_300.f', '/recover/df/DATA_264.f', '/recover/df/DATA_287.f', '/recover/df/DATA_280.f', '/recover/df/DATA_286.f', '/recover/df/DATA_268.f', '/recover/df/DATA_285.f', '/recover/df/DATA_297.f' CHARACTER SET UTF8 ; 37 CREATE CONTROLFILE REUSE DATABASE "xifenfei" NORESETLOGS NOARCHIVELOG * ERROR at line 1: ORA-01503: CREATE CONTROLFILE failed ORA-01159: file is not from same database as previous files - wrong database id ORA-01110: data file 3: '/recover/df/DATA_288.f'
由于部分文件不是该库的,通过进一步分析,除掉不是该库的文件,重建ctl文件成功.尝试recover数据库,报大量ORA-07445错误,由于cache丢失redo损坏导致,此类操作可能导致数据文件损坏【恢复需要谨慎,最好对数据文件做一次备份】
Sat Oct 01 16:23:16 BEIST 2022 ALTER DATABASE RECOVER database Media Recovery Start parallel recovery started with 15 processes Sat Oct 01 16:23:16 BEIST 2022 Recovery of Online Redo Log: Thread 1 Group 5 Seq 2202 Reading mem 0 Mem# 0: /recover/df/DATA_262.f Sat Oct 01 16:23:16 BEIST 2022 Recovery of Online Redo Log: Thread 2 Group 6 Seq 2394 Reading mem 0 Mem# 0: /recover/df/DATA_283.f Sat Oct 01 16:23:28 BEIST 2022 Recovery of Online Redo Log: Thread 2 Group 3 Seq 2395 Reading mem 0 Mem# 0: /recover/df/DATA_281.f Sat Oct 01 16:23:34 BEIST 2022 Recovery of Online Redo Log: Thread 1 Group 1 Seq 2203 Reading mem 0 Mem# 0: /recover/df/DATA_267.f Sat Oct 01 16:23:35 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p009_13107402.trc: ORA-07445: exception encountered: core dump [kcbzfc+00dc] [SIGSEGV] Sat Oct 01 16:23:35 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p014_7929944.trc: ORA-07445: exception encountered: core dump [kcbzfc+00dc] [SIGSEGV] Sat Oct 01 16:23:35 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p011_10092678.trc: ORA-07445: exception encountered: core dump [kcbzfc+00dc] [SIGSEGV] Sat Oct 01 16:23:35 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_dbw1_12189898.trc: ORA-07445: exception encountered: core dump [kcbzdh+0324] [SIGSEGV] Sat Oct 01 16:23:35 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p005_14549014.trc: ORA-07445: exception encountered: core dump [kcbbufaddr2hdr+00d8] [SIGSEGV] Sat Oct 01 16:23:35 BEIST 2022 Hex dump of (file 6, block 10) in trace file /home/oracle/admin/xifenfei/bdump/xifenfei2_dbw0_13565988.trc Corrupt block relative dba: 0x0180000a (file 6, block 10) Bad header found during buffer corrupt after write Data in bad block: type: 2 format: 1 rdba: 0x00000180 last change scn: 0xa0c3.000a6eeb seq: 0x0 flg: 0x00 spare1: 0x2 spare2: 0xa2 spare3: 0x3486 consistency value in tail: 0x0000a0c3 check value in block header: 0x204 block checksum disabled Reread of rdba: 0x0180000a (file 6, block 10) found different data Sat Oct 01 16:23:35 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_dbw0_13565988.trc: ORA-07445: exception encountered: core dump [kcbbiop+01b8] [SIGSEGV] [Invalid permissions for mapped object] Sat Oct 01 16:23:36 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p014_7929944.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbzfc+00dc] [SIGSEGV] [Address not mapped to object] Sat Oct 01 16:23:36 BEIST 2022 Trace dumping is performing id=[cdmp_20221001162336] Sat Oct 01 16:23:37 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p011_10092678.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbzfc+00dc] [SIGSEGV] [Address not mapped to object] Sat Oct 01 16:23:37 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p009_13107402.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbzfc+00dc] [SIGSEGV] [Address not mapped to object] Sat Oct 01 16:23:37 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_dbw1_12189898.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbzdh+0324] [SIGSEGV] [Address not mapped to object] Sat Oct 01 16:23:37 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p005_14549014.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbbufaddr2hdr+00d8] [SIGSEGV] [Address not mapped to object] Sat Oct 01 16:23:37 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_dbw0_13565988.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbbiop+01b8] [SIGSEGV] [Invalid permissions for mapped object] Sat Oct 01 16:23:37 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p005_14549014.trc: ORA-00607: Internal error occurred while making a change to a data block ORA-00602: internal programming exception ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbbufaddr2hdr+00d8] [SIGSEGV] [Address not mapped to object] Sat Oct 01 16:23:38 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p010_9502918.trc: ORA-00600: internal error code, arguments: [3020], [3], [31913], [2], [2395], [210418], [16], [] ORA-10567: Redo is inconsistent with data block (file# 3, block# 31913) ORA-10564: tablespace SYSAUX ORA-01110: data file 3: '/recover/df/DATA_278.f' ORA-10560: block type 'FIRST LEVEL BITMAP BLOCK' Sat Oct 01 16:23:39 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p010_9502918.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-00600: internal error code, arguments: [3020], [3], [31913], [2], [2395], [210418], [16], [] ORA-10567: Redo is inconsistent with data block (file# 3, block# 31913) ORA-10564: tablespace SYSAUX ORA-01110: data file 3: '/recover/df/DATA_278.f' ORA-10560: block type 'FIRST LEVEL BITMAP BLOCK' Sat Oct 01 16:23:39 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_pmon_14418166.trc: ORA-00471: DBWR process terminated with error Sat Oct 01 16:23:39 BEIST 2022 PMON: terminating instance due to error 471 Sat Oct 01 16:23:40 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/bdump/xifenfei2_p010_9502918.trc: ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-07445: exception encountered: core dump [kcbs_dump_adv_state+027c] [SIGSEGV] ORA-00600: internal error code, arguments: [3020], [3], [31913], [2], [2395], [210418], [16], [] ORA-10567: Redo is inconsistent with data block (file# 3, block# 31913) ORA-10564: tablespace SYSAUX ORA-01110: data file 3: '/recover/df/DATA_278.f' ORA-10560: block type 'FIRST LEVEL BITMAP BLOCK' Sat Oct 01 16:23:46 BEIST 2022 Dump system state for local instance only System State dumped to trace file /home/oracle/admin/xifenfei/bdump/xifenfei2_diag_15401212.trc Sat Oct 01 16:23:46 BEIST 2022 Trace dumping is performing id=[cdmp_20221001162346] Sat Oct 01 16:23:49 BEIST 2022 Instance terminated by PMON, pid = 14418166
绕过redo,直接强制启动库,报ORA-01092错误
QL> startup mount pfile='/tmp/pfile' ORACLE instance started. Total System Global Area 10737418240 bytes Fixed Size 2114208 bytes Variable Size 1560284512 bytes Database Buffers 9160359936 bytes Redo Buffers 14659584 bytes Database mounted. SQL> alter database open resetlogs; alter database open resetlogs * ERROR at line 1: ORA-01092: ORACLE instance terminated. Disconnection forced
分析alert日志,确认是由于undo异常导致
Additional information: 3 Sat Oct 01 17:25:21 BEIST 2022 Setting recovery target incarnation to 2 Sat Oct 01 17:25:21 BEIST 2022 Assigning activation ID 1094862311 (0x414245e7) Thread 1 opened at log sequence 1 Current log# 1 seq# 1 mem# 0: /recover/df/DATA_267.f1 Successful open of redo thread 1 Sat Oct 01 17:25:21 BEIST 2022 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set Sat Oct 01 17:25:21 BEIST 2022 SMON: enabling cache recovery Sat Oct 01 17:25:23 BEIST 2022 ORA-01555 caused by SQL statement below (SQL ID: 4krwuz0ctqxdt, SCN: 0x0000.6ee0bde5): Sat Oct 01 17:25:23 BEIST 2022 select ctime, mtime, stime from obj$ where obj# = :1 Sat Oct 01 17:25:23 BEIST 2022 Errors in file /home/oracle/admin/xifenfei/udump/xifenfei2_ora_19726450.trc: ORA-00704: bootstrap process failure ORA-00704: bootstrap process failure ORA-00604: error occurred at recursive SQL level 1 ORA-01555: snapshot too old: rollback segment number 8 with name "_SYSSMU8$" too small Error 704 happened during db open, shutting down database USER: terminating instance due to error 704 Instance terminated by USER, pid = 19726450 ORA-1092 signalled during: alter database open resetlogs...
类似此类错误的解决方案,以前写过参考:
在数据库open过程中常遇到ORA-01555汇总
数据库open过程遭遇ORA-1555对应sql语句补充
Oracle Recovery Tools恢复—ORA-00704 ORA-01555故障
使用_allow_resetlogs_corruption导致ORA-00704/ORA-01555故障
解决该问题,数据库启动正常,逻辑导出数据,导入数据完成此次恢复任务,实现绝大部分数据恢复