标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-00742 ORA-01110 ORA-01555 ORA-01578 ORA-01595 ORA-08103 ORA-600 2131 ORA-600 2662 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)
- 操作系统 (103)
- 数据库 (1,769)
- DB2 (22)
- MySQL (77)
- Oracle (1,610)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (166)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (69)
- Oracle Bug (8)
- Oracle RAC (54)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (592)
- Oracle安装升级 (97)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (86)
- PostgreSQL (30)
- pdu工具 (6)
- PostgreSQL恢复 (9)
- SQL Server (32)
- SQL Server恢复 (13)
- TimesTen (7)
- 达梦数据库 (3)
- 达梦恢复 (1)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (39)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (22)
-
最近发表
- 2025年的Oracle 8.0.5数据库恢复
- ORA-600 kokiasg1故障分析(obj$中核心字典序列全部被恶意删除)
- ORA-00756 ORA-10567故障数据0丢失恢复
- 数据库文件变成32k故障恢复
- tcp连接过多导致监听TNS-12532 TNS-12560 TNS-00502错误
- 文件系统格式化MySQL数据库恢复
- .sstop勒索加密数据库恢复
- 解决一次硬件恢复之后数据文件0kb的故障恢复case
- Error in invoking target ‘libasmclntsh19.ohso libasmperl19.ohso client_sharedlib’问题处理
- ORA-01171: datafile N going offline due to error advancing checkpoint
- linux环境oracle数据库被文件系统勒索加密为.babyk扩展名溯源
- ORA-600 ksvworkmsgalloc: bad reaper
- ORA-600 krccfl_chunk故障处理
- Oracle Recovery Tools恢复案例总结—202505
- ORA-600 kddummy_blkchk 数据库循环重启
- 记录一次asm disk加入到vg通过恢复直接open库的案例
- CHECKDB 发现了 N 个分配错误和 M 个一致性错误
- 达梦数据库dm.ctl文件异常恢复
- Oracle Recovery Tools修复ORA-00742、ORA-600 ktbair2: illegal inheritance故障
- 可能是 tempdb 空间用尽或某个系统表不一致故障处理
分类目录归档:Oracle备份恢复
硬件故障恢复出文件之后数据库故障处理
客户那边硬件故障(raid损坏磁盘超过了极限,导致raid offline),通过硬件恢复出来数据文件,然后尝试自行恢复,我接手的时候大量数据文件resetlogs scn异常.
重建控制文件报错
WARNING: Default Temporary Tablespace not specified in CREATE DATABASE command Default Temporary Tablespace will be necessary for a locally managed database in future release Errors in file /home/oracle/app/diag/rdbms/orcl/orcl/trace/orcl_ora_5949.trc: ORA-01189: file is from a different RESETLOGS than previous files ORA-01110: data file 153: '/home/oracle/oracledata/orcl/sysaux02.dbf' ORA-1503 signalled during: CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
通过修改文件头然后重建控制文件,可以通过bbed,或者我的小工具Oracle Recovery Tools
bbed解决ORA-01190
Oracle Recovery Tools 解决ORA-01190 ORA-01248等故障
重建control遗漏数据文件,reseltogs报ORA-1555错误处理
然后继续重建ctl发现以下错误
WARNING: Default Temporary Tablespace not specified in CREATE DATABASE command Default Temporary Tablespace will be necessary for a locally managed database in future release Errors in file /home/oracle/app/diag/rdbms/orcl/orcl/trace/orcl_ora_34075.trc: ORA-01200: actual file size of 2015415 is smaller than correct size of 2944000 blocks ORA-01110: data file 178: '/home/oracle/oracledata/orcl/xifenfei20_10.dbf' ORA-1503 signalled during: CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG
重新上传文件,然后修改文件头,该问题解决,重建ctl成功,提个醒:对于这种硬件恢复之后文件上次到服务器上进行恢复的,一定要确认上传文件和原文件一致,不然做无用功或者恢复效果差很多
尝试open数据库报ORA-600 2662错误
SQL> alter database open resetlogs; alter database open resetlogs * ERROR at line 1: ORA-00603: ORACLE server session terminated by fatal error ORA-00600: internal error code, arguments: [2662], [5], [1653389530], [5], [1653496702], [12583040], [], [], [], [], [], [] ORA-00600: internal error code, arguments: [2662], [5], [1653389529], [5], [1653496702], [12583040], [], [], [], [], [], [] ORA-01092: ORACLE instance terminated. Disconnection forced ORA-00600: internal error code, arguments: [2662], [5], [1653389527], [5], [1653496702], [12583040], [], [], [], [], [], [] Process ID: 4710 Session ID: 1847 Serial number: 3
这个错误比较简单,一般是scn问题,有过大量的处理经验案例:
使用bbed解决ORA-00600[2662]
硬件故障导致ORA-600 2662错误处理
Patch SCN工具快速解决ORA-600 2662问题
解决好该问题之后,数据库open成功,实现了最大限度抢救数据.
dul支持arm版本Oracle数据库恢复
确认数据库名字,DBID,运行在ARM平台
SQL> select name,dbid,PLATFORM_ID,PLATFORM_NAME from v$database; NAME DBID PLATFORM_ID --------- ---------- ----------- PLATFORM_NAME -------------------------------------------------------------------------------- ARMDB 1195886419 23 Linux OS (AARCH64)
dul恢复ARM平台数据库
[oracle@xifenfei dul]$ ./dul Data UnLoader: 12.2.0.2.5 - Internal Only - on Sun Jul 9 22:05:51 2023 with 64-bit io functions and the decompression option Copyright (c) 1994 2023 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only DUL: Warning: ulimit process stack size is only 33554432 Found db_id = 1195886419 Found db_name = ARMDB DUL> bootstrap; Probing file = 1, block = 520 . unloading table BOOTSTRAP$ DUL: Warning: block number is non zero but marked deferred trying to process it anyhow 60 rows unloaded Reading BOOTSTRAP.dat 60 entries loaded Parsing Bootstrap$ contents Generating dict.ddl for version 12 OBJ$: segobjno 18, file 1 block 240 TAB$: segobjno 2, tabno 1, file 1 block 144 COL$: segobjno 2, tabno 5, file 1 block 144 USER$: segobjno 10, tabno 1, file 1 block 208 Running generated file "@dict.ddl" to unload the dictionary tables . unloading table OBJ$ 23092 rows unloaded . unloading table TAB$ 1794 rows unloaded . unloading table COL$ 118438 rows unloaded . unloading table USER$ 85 rows unloaded Reading USER.dat 85 entries loaded Reading OBJ.dat 23092 entries loaded and sorted 23092 entries Reading TAB.dat 1794 entries loaded Reading COL.dat 118438 entries loaded and sorted 118438 entries Reading BOOTSTRAP.dat 60 entries loaded DUL: Warning: Recreating file "dict.ddl" Generating dict.ddl for version 12 OBJ$: segobjno 18, file 1 block 240 TAB$: segobjno 2, tabno 1, file 1 block 144 COL$: segobjno 2, tabno 5, file 1 block 144 USER$: segobjno 10, tabno 1, file 1 block 208 TABPART$: segobjno 822, file 1 block 5496 INDPART$: segobjno 827, file 1 block 5536 TABCOMPART$: segobjno 844, file 1 block 5672 INDCOMPART$: segobjno 849, file 1 block 5712 TABSUBPART$: segobjno 834, file 1 block 5592 INDSUBPART$: segobjno 839, file 1 block 5632 IND$: segobjno 2, tabno 3, file 1 block 144 ICOL$: segobjno 2, tabno 4, file 1 block 144 LOB$: segobjno 2, tabno 6, file 1 block 144 COLTYPE$: segobjno 2, tabno 7, file 1 block 144 TYPE$: segobjno 748, tabno 1, file 1 block 4960 COLLECTION$: segobjno 748, tabno 2, file 1 block 4960 ATTRIBUTE$: segobjno 748, tabno 3, file 1 block 4960 LOBFRAG$: segobjno 855, file 1 block 5768 LOBCOMPPART$: segobjno 858, file 1 block 5792 UNDO$: segobjno 15, file 1 block 224 TS$: segobjno 6, tabno 2, file 1 block 176 PROPS$: segobjno 127, file 1 block 1320 Running generated file "@dict.ddl" to unload the dictionary tables . unloading table OBJ$ DUL: Warning: Recreating file "OBJ.ctl" 23092 rows unloaded . unloading table TAB$ DUL: Warning: Recreating file "TAB.ctl" 1794 rows unloaded . unloading table COL$ DUL: Warning: Recreating file "COL.ctl" 118438 rows unloaded . unloading table USER$ DUL: Warning: Recreating file "USER.ctl" 85 rows unloaded . unloading table TABPART$ 320 rows unloaded . unloading table INDPART$ 186 rows unloaded . unloading table TABCOMPART$ 1 row unloaded . unloading table INDCOMPART$ 0 rows unloaded . unloading table TABSUBPART$ 32 rows unloaded . unloading table INDSUBPART$ 0 rows unloaded . unloading table IND$ 2273 rows unloaded . unloading table ICOL$ 4155 rows unloaded . unloading table LOB$ 566 rows unloaded . unloading table COLTYPE$ 2794 rows unloaded . unloading table TYPE$ 4381 rows unloaded . unloading table COLLECTION$ 983 rows unloaded . unloading table ATTRIBUTE$ 11584 rows unloaded . unloading table LOBFRAG$ 8 rows unloaded . unloading table LOBCOMPPART$ 0 rows unloaded . unloading table UNDO$ 11 rows unloaded . unloading table TS$ 5 rows unloaded . unloading table PROPS$ 39 rows unloaded Reading USER.dat 85 entries loaded Reading OBJ.dat 23092 entries loaded and sorted 23092 entries Reading TAB.dat 1794 entries loaded Reading COL.dat 118438 entries loaded and sorted 118438 entries Reading TABPART.dat 320 entries loaded and sorted 320 entries Reading TABCOMPART.dat 1 entries loaded and sorted 1 entries Reading TABSUBPART.dat 32 entries loaded and sorted 32 entries Reading INDPART.dat 186 entries loaded and sorted 186 entries Reading INDCOMPART.dat 0 entries loaded and sorted 0 entries Reading INDSUBPART.dat 0 entries loaded and sorted 0 entries Reading IND.dat 2273 entries loaded Reading LOB.dat 566 entries loaded Reading ICOL.dat 4155 entries loaded Reading COLTYPE.dat 2794 entries loaded Reading TYPE.dat DUL: Notice: Increased the size of DC_TYPES from 4096 to 32768 entries 4381 entries loaded Reading ATTRIBUTE.dat 11584 entries loaded Reading COLLECTION.dat 983 entries loaded Reading BOOTSTRAP.dat 60 entries loaded Reading LOBFRAG.dat 8 entries loaded and sorted 8 entries Reading LOBCOMPPART.dat 0 entries loaded and sorted 0 entries Reading UNDO.dat 11 entries loaded Reading TS.dat 5 entries loaded Reading PROPS.dat 39 entries loaded Database character set is AL32UTF8 Database national character set is AL16UTF16 DUL> unload table sys.obj$; . unloading table OBJ$ 23092 rows unloaded DUL>
通过上述测试,证明dul支持arm版本Oracle数据库恢复
win系统删除oracle数据文件恢复
有客户联系我们,说win平台下的数据库,在由于空间紧张,在关闭数据库的情况下删除的两个数据文件,导致数据库无法正常访问很多业务表,需要对其进行恢复,查看alert日志发现大概操作,删除文件之后,启动数据库失败
Completed: alter database mount exclusive alter database open Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_dbw0_4060.trc: ORA-01157: cannot identify/lock data file 6 - see DBWR trace file ORA-01110: data file 6: 'D:\DATASPACE\XXXXX.DBF' ORA-27041: unable to open file OSD-04002: 无法打开文件 O/S-Error: (OS 2) 系统找不到指定的文件。 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_dbw0_4060.trc: ORA-01157: cannot identify/lock data file 38 - see DBWR trace file ORA-01110: data file 38: 'D:\DATASPACE\XXXXX24.DBF' ORA-27041: unable to open file OSD-04002: 无法打开文件 O/S-Error: (OS 2) 系统找不到指定的文件。 Tue Jun 27 14:50:28 2023 Checker run found 2 new persistent data failures
人工创建被删除文件,启动库报ORA-27047,OSD-04006等错误
Tue Jun 27 16:45:10 2023 ALTER DATABASE OPEN Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_dbw0_5456.trc: ORA-01157: cannot identify/lock data file 6 - see DBWR trace file ORA-01110: data file 6: 'D:\DATASPACE\XXXXX.DBF' ORA-27047: unable to read the header block of file OSD-04006: ReadFile() 失败, 无法读取文件 O/S-Error: (OS 38) 已到文件结尾。
offline相关数据文件,启动库成功,但是job开始报错
Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_dbw0_5456.trc: ORA-01157: cannot identify/lock data file 38 - see DBWR trace file ORA-01110: data file 38: 'D:\DATASPACE\XXXXX24.DBF' ORA-27041: unable to open file OSD-04002: 无法打开文件 O/S-Error: (OS 2) 系统找不到指定的文件。 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_648.trc: ORA-01157: 无法标识/锁定数据文件 6 - 请参阅 DBWR 跟踪文件 ORA-01110: 数据文件 6: 'D:\DATASPACE\XXXXX.DBF' ORA-1157 signalled during: ALTER DATABASE OPEN... Tue Jun 27 16:48:43 2023 alter database datafile 'D:\DATASPACE\XXXXX.DBF' offline drop Completed: alter database datafile 'D:\DATASPACE\XXXXX.DBF' offline drop Tue Jun 27 16:49:08 2023 alter database open Tue Jun 27 16:49:08 2023 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_dbw0_5456.trc: ORA-01157: cannot identify/lock data file 38 - see DBWR trace file ORA-01110: data file 38: 'D:\DATASPACE\XXXXX24.DBF' ORA-27041: unable to open file OSD-04002: 无法打开文件 O/S-Error: (OS 2) 系统找不到指定的文件。 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_3976.trc: ORA-01157: 无法标识/锁定数据文件 38 - 请参阅 DBWR 跟踪文件 ORA-01110: 数据文件 38: 'D:\DATASPACE\XXXXX24.DBF' ORA-1157 signalled during: alter database open... Tue Jun 27 16:49:08 2023 Checker run found 1 new persistent data failures Tue Jun 27 16:49:28 2023 alter database datafile 'D:\DATASPACE\XXXXX24.DBF' offline drop Completed: alter database datafile 'D:\DATASPACE\XXXXX24.DBF' offline drop alter database open Tue Jun 27 16:49:37 2023 Thread 1 opened at log sequence 145929 Current log# 3 seq# 145929 mem# 0: D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG Successful open of redo thread 1 MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set Tue Jun 27 16:49:37 2023 SMON: enabling cache recovery Successfully onlined Undo Tablespace 2. Verifying file header compatibility for 11g tablespace encryption.. Verifying 11g file header compatibility for tablespace encryption completed SMON: enabling tx recovery Database Characterset is ZHS16GBK No Resource Manager plan active Tue Jun 27 16:49:39 2023 replication_dependency_tracking turned off (no async multimaster replication found) Starting background process QMNC Tue Jun 27 16:49:40 2023 QMNC started with pid=21, OS id=6096 Completed: alter database open Tue Jun 27 16:49:43 2023 db_recovery_file_dest_size of 4096 MB is 0.00% used. This is a user-specified limit on the amount of space that will be used by this database for recovery-related files, and does not reflect the amount of space available in the underlying filesystem or ASM diskgroup. Tue Jun 27 16:49:44 2023 Starting background process CJQ0 Tue Jun 27 16:49:44 2023 CJQ0 started with pid=142, OS id=6036 Tue Jun 27 16:49:48 2023 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_j007_5184.trc: ORA-12012: 自动执行作业 64 出错 ORA-00376: 此时无法读取文件 6 ORA-01110: 数据文件 6: 'D:\DATASPACE\XXXXX.DBF' ORA-06512: 在 "XIFENFEI.XXXXXXXX", line 2897 ORA-06512: 在 line 1 Tue Jun 27 16:51:52 2023 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_j000_2548.trc: ORA-12012: 自动执行作业 64 出错 ORA-00376: 此时无法读取文件 6 ORA-01110: 数据文件 6: 'D:\DATASPACE\XXXXX.DBF' ORA-06512: 在 "XIFENFEI.XXXXXXXX", line 2897 ORA-06512: 在 line 1 Tue Jun 27 16:54:44 2023 Starting background process SMCO Tue Jun 27 16:54:44 2023 SMCO started with pid=42, OS id=908 Tue Jun 27 16:55:52 2023
接手现场之后,关闭数据库,使用操作系统层面反删除工具进行扫描恢复,发现其中一个文件(另外一个文件os层面无法恢复)
通过工具检测恢复出来的数据文件,损坏的几个block是文件头部不涉及业务数据,运气不错

另外一个数据文件,从os层面无法恢复,对于这种情况,只能基于底层的block层面进行恢复(恢复没有覆盖的block)

参考类似恢复案例:
win文件系统损坏oracle恢复
Oracle 数据文件大小为0kb或者文件丢失恢复
分享运气超级好的一次drop tablespace 数据恢复
恢复出来的两个数据文件,结合该编辑的其他数据文件通过dul工具恢复其中数据,最大程度抢救客户数据,减少损失.