有客户数据库启动报ORA-704 ORA-604 ORA-1578错误,导致启动失败

alert日志报错
| Fri Feb 06 23:38:43 2026SMON: enabling cache recoveryErrors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_ora_239325.trc (incident=1008437):ORA-01578: ORACLE data block corrupted (file # 1, block # 241)ORA-01110: data file 1: '+DATADG/orcl/datafile/system.270.1015415183'Fri Feb 06 23:38:46 2026Redo thread 2 internally disabled at seq 6 (CKPT)Archived Log entry 182212 added for thread 2 sequence 5 ID 0xd68b4385 dest 1:ARC0: Archiving disabled thread 2 sequence 6Archived Log entry 182213 added for thread 2 sequence 6 ID 0xd68b4385 dest 1:Thread 1 advanced to log sequence 9 (LGWR switch) Current log# 1 seq# 9 mem# 0: +DATADG/orcl/onlinelog/group_1.302.1223816761 Current log# 1 seq# 9 mem# 1: +ARCHDG/orcl/onlinelog/group_1.257.1223816761Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_ora_239325.trc:ORA-00704: bootstrap process failureORA-00704: bootstrap process failureORA-00604: error occurred at recursive SQL level 1ORA-01578: ORACLE data block corrupted (file # 1, block # 241)ORA-01110: data file 1: '+DATADG/orcl/datafile/system.270.1015415183'Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_ora_239325.trc:ORA-00704: bootstrap process failureORA-00704: bootstrap process failureORA-00604: error occurred at recursive SQL level 1ORA-01578: ORACLE data block corrupted (file # 1, block # 241)ORA-01110: data file 1: '+DATADG/orcl/datafile/system.270.1015415183'Error 704 happened during db open, shutting down databaseUSER (ospid: 239325): terminating the instance due to error 704Fri Feb 06 23:38:48 2026Instance terminated by USER, pid = 239325ORA-1092 signalled during: alter database open...opiodr aborting process unknown ospid (239325) as a result of ORA-1092Fri Feb 06 23:38:48 2026ORA-1092 : opitsk aborting process | 对system文件进行dbv检测(客户通过asmcmd cp命令拷贝出来system文件)
| DBVERIFY - Verification starting : FILE = /asm_backup/orcl/datafile/SYSTEM.270.1015415183 DBV-00200: Block, DBA 4194545, already marked corruptcsc(0x0006.d75a0ed7) higher than block scn(0x0000.00000000)Page 241 failed with check code 6054 DBV-00200: Block, DBA 4306619, already marked corruptcsc(0x0006.d75a14f4) higher than block scn(0x0000.00000000)Page 112315 failed with check code 6054 DBVERIFY - Verification complete Total Pages Examined : 738560Total Pages Processed (Data) : 424109Total Pages Failing (Data) : 1Total Pages Processed (Index): 287403Total Pages Failing (Index): 1Total Pages Processed (Other): 3408Total Pages Processed (Seg) : 1Total Pages Failing (Seg) : 0Total Pages Empty : 23640Total Pages Marked Corrupt : 2Total Pages Influx : 0Total Pages Encrypted : 0Highest block SCN : 3613010282 (6.3613010282) | 这里可以看到有两个block被标记为坏块原因是由于:csc(0×0006.d75a0ed7) higher than block scn(0×0000.00000000),坏块错误代码为:Page 241 failed with check code 6054.这种问题的原因是由于block的scn小于数据块的csc(一般是由于写丢失导致),对于这个问题,最近在obet中刚刚增加了repair blkscn功能进行修复,具体参考:obet修复csc higher than block scn类型坏块,使用工具修复操作(其他block类似修改)
| OBET> set filename /datapool/asm_backup/orcl/datafile/SYSTEM.270.1015415183filename set to: /datapool/asm_backup/orcl/datafile/SYSTEM.270.1015415183 OBET> set block 241block set to: 241 OBET> backupCreated backup directory: backup_blkSuccessfully backed up current block from current file to /tmp/backup_blk/SYSTEM.270.1015415183_241.20260209122822 OBET> repair blkscn Repairing SCN for block 241... Current block SCN information: scn_base: 0x00000000 (0) scn_wrap: 0x0000 (0) Block 1 reference information: hdr_base: 0xD75FF65E (3613390430) hdr_wrap: 0x0006 (6) Current block CSC information: csc_base: 0xD75A0ED7 (3613003479) csc_wrap: 0x0006 (6) Calculated values: blkcsc: 29382807255 (0x00000006D75A0ED7) blkscn: 0 (0x0000000000000000) blkscn < blkcsc, SCN repair required. SCN repair requires edit mode.Please enable edit mode with 'set mode edit' first. OBET> set mode editmode set to: edit OBET> repair blkscn Repairing SCN for block 241... Current block SCN information: scn_base: 0x00000000 (0) scn_wrap: 0x0000 (0) Block 1 reference information: hdr_base: 0xD75FF65E (3613390430) hdr_wrap: 0x0006 (6) Current block CSC information: csc_base: 0xD75A0ED7 (3613003479) csc_wrap: 0x0006 (6) Calculated values: blkcsc: 29382807255 (0x00000006D75A0ED7) blkscn: 0 (0x0000000000000000) blkscn < blkcsc, SCN repair required. New SCN values to write: new_scn_base: 0xD75FF65D (3613390429) new_scn_wrap: 0x0006 (6) Confirm SCN repair operations:File: /datapool/asm_backup/orcl/datafile/SYSTEM.270.1015415183Block: 241Operations: 1. Write new scn_base (0xD75FF65D) 2. Write new scn_wrap (0x0006) 3. Fix seq_kcbh (0xFF -> 0x01) Confirm? (Y/YES to proceed): y [Undo information saved - use 'undo' command to restore original values] Verification after SCN repair:1. scn_base: 5DF65FD7 (expected: 5DF65FD7)2. scn_wrap: 0600 (expected: 0600)3. seq_kcbh: 0x01 OK Block 241 SCN repair completed successfully.Execute tailchk apply and sum apply for this block. OBET> tailchk apply Confirm applying tailchk:File: /datapool/asm_backup/orcl/datafile/SYSTEM.270.1015415183Block: 241Offset in block: 8188 (file offset: 0x001E3FFC)Original value: 0xFF060000New value: 0x01065DF6Confirm? (Y/YES to proceed): yVerification successful: Stored tailchk matches calculated value (0x01065DF6).Tailchk applied successfully. OBET> sum apply Confirm applying checksum:File: /datapool/asm_backup/orcl/datafile/SYSTEM.270.1015415183Block: 241Offset in block: 16 (file offset: 0x001E2010)Original value: 0x7330New value: 0x2AE7Confirm? (Y/YES to proceed): yVerification successful: Stored checksum matches calculated value (0x2AE7).Checksum applied successfully. | 然后dbv检查数据文件
| [oracle@db4 tmp]$ dbv file=/datapool/asm_backup/orcl/datafile/SYSTEM.270.1015415183 DBVERIFY: Release 11.2.0.4.0 - Production on Mon Feb 9 20:37:54 2026 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. DBVERIFY - Verification starting : FILE = /datapool/asm_backup/orcl/datafile/SYSTEM.270.1015415183 DBVERIFY - Verification complete Total Pages Examined : 738560Total Pages Processed (Data) : 424109Total Pages Failing (Data) : 0Total Pages Processed (Index): 287403Total Pages Failing (Index): 1Total Pages Processed (Other): 3408Total Pages Processed (Seg) : 1Total Pages Failing (Seg) : 0Total Pages Empty : 23640Total Pages Marked Corrupt : 0Total Pages Influx : 0Total Pages Encrypted : 0Highest block SCN : 3613451063 (6.3613451063) | 然后直接顺利打开数据库
| SQL> alter database open; Database altered. | 由于该库在我接手之前已经做了大量的强制拉库等各种恢复尝试,因此对该库做逻辑导出,导入新库完成本次恢复任务
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |