标签云
asm恢复 bbed bootstrap$ dul kcbzib_kcrsds_1 kccpb_sanity_check_2 kcratr_nab_less_than_odr MySQL恢复 obet ORA-00312 ORA-00704 ORA-00742 ORA-01110 ORA-01200 ORA-01555 ORA-01578 ORA-01595 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-600 kcratr_nab_less_than_odr 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 比特币加密文章分类
- MongoDB (1)
- MongoDB恢复 (1)
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (112)
- 数据库 (1,879)
- DB2 (22)
- MySQL (82)
- Oracle (1,705)
- Data Guard (53)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (168)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (72)
- Oracle Bug (8)
- Oracle RAC (56)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (659)
- Oracle安装升级 (108)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (91)
- PostgreSQL (37)
- pdu工具 (7)
- PostgreSQL恢复 (13)
- SQL Server (34)
- SQL Server恢复 (14)
- TimesTen (7)
- 达梦数据库 (5)
- 达梦恢复 (3)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (51)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (34)
- MongoDB (1)
-
最近发表
- Oracle 19c 202610补丁(RUs+OJVM)-19.33
- 由于con$.con#值达到极限,触发数据库增加约束报ORA-600 12807错误
- MongoDB 离线提取工具—mongoext
- .bres勒索病毒加密数据库dmp文件可恢复
- ORA-600 krsm_mrp_rebuild_lf_list.lno_mismatch
- 记录一次0丢失的ORA-00354: 损坏重做日志块标头故障恢复
- 不当数据库恢复操作导致一个月数据丢失
- obet快速修复oracle 位图损坏块
- 不太常见的10.2.0.1的oracle redo损坏恢复
- obet forcecopy功能抢救硬件故障中的数据文件
- kcratr_nab_less_than_odr和system坏块故障处理
- 通过obet 恢复system坏块,打开数据库
- obet dbv功能完整说明
- 分享一例运行在aix上的sap系统数据库恢复过程
- OBET-Oracle Block Editor Tool使用说明
- 几乎动用了所有手段的Oracle故障恢复
- Oracle Block Edit Tool (obet) 功能增强–2026.07
- Oracle 19c 202607补丁(RUs+OJVM)-19.32
- Patch_SCN快速修复ORA-01555数据库open故障
- 快速处理 ORA-01210: data file header is media corrupt 故障
分类目录归档:ORA-xxxxx
ORA-12518 ORA-27302: 错误发生在: ssthrddcr
11.2.0.1数据库运行在win 2008机器上,进程数配置为1000,但是数据库连接数到了170多之后,就开始报ORA-12518 TNS:监听程序无法分发客户机连接

检查alert日志发现后台日志报ORA-27300 ORA-27301 ORA-27302错误
Fri May 06 11:57:14 2022 Process startup failed, error stack: Errors in file c:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_psp0_3052.trc: ORA-27300: 操作系统系统相关操作: CreateThread 失败, 状态为: 8 ORA-27301: 操作系统故障消息: 存储空间不足,无法处理此命令。 ORA-27302: 错误发生在: ssthrddcr Process J002 died, see its trace file kkjcre1p: unable to spawn jobq slave process Errors in file c:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_cjq0_3808.trc:
参考:Ora-27300: OS System Dependent Operation:Createthread Failed With Status: 8 (Doc ID1310453.1)
segment header异常对象删除处理
对于某些极端情况下,segment header出现损坏的对象该如何处理,这里通过一个实验来说明这类情况该如何处理,创建表并查询相关segment信息
SQL> create tablespace t_xff datafile '/u01/app/oracle/oradata/orcl/t_xifenfei01.dbf' size 128M autoextend on;
Tablespace created.
SQL> create table t_xifenfei tablespace t_xff as select * from dba_objects;
Table created.
SQL> select header_file,header_block from dba_SEGMENTS where segment_name='T_XIFENFEI' and owner='SYS';
HEADER_FILE HEADER_BLOCK
----------- ------------
5 130
----segment header 为 file 5,block 130
SQL> select EXTENT_ID , FILE_ID ,BLOCK_ID from dba_extents where segment_name='T_XIFENFEI' and owner='SYS';
EXTENT_ID FILE_ID BLOCK_ID
---------- ---------- ----------
0 5 128
1 5 136
2 5 144
3 5 152
4 5 160
5 5 168
6 5 176
7 5 184
8 5 192
9 5 200
10 5 208
11 5 216
12 5 224
13 5 232
14 5 240
15 5 248
16 5 256
17 5 384
18 5 512
19 5 640
20 5 768
21 5 896
22 5 1024
23 5 1152
24 5 1280
25 rows selected.
---有25个extent信息
SQL> select * from dba_free_space where file_id=5;
TABLESPACE_NAME FILE_ID BLOCK_ID BYTES BLOCKS
------------------------------ ---------- ---------- ---------- ----------
RELATIVE_FNO
------------
T_XFF 5 1408 122683392 14976
5
--空闲block是从1408开始
模拟segment header损坏(通过dd破坏block)
SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> SQL> SQL> SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options [oracle@xifenfei ~]$ [oracle@xifenfei ~]$ [oracle@xifenfei ~]$echo xifenfei.com|dd of=/u01/app/oracle/oradata/orcl/t_xifenfei01.dbf bs=8192 conv=notrunc seek=130 0+1 records in 0+1 records out 17 bytes (17 B) copied, 5.4389e-05 s, 313 kB/s [oracle@xifenfei ~]$ dbv file=/u01/app/oracle/oradata/orcl/t_xifenfei01.dbf DBVERIFY: Release 11.2.0.4.0 - Production on Wed Apr 13 20:29:41 2022 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. DBVERIFY - Verification starting : FILE = /u01/app/oracle/oradata/orcl/t_xifenfei01.dbf Page 130 is marked corrupt Corrupt block relative dba: 0x01400082 (file 5, block 130) Bad header found during dbv: Data in bad block: type: 119 format: 7 rdba: 0x65666978 last change scn: 0x632e.6965666e seq: 0x6f flg: 0x6d spare1: 0x77 spare2: 0x2e spare3: 0x0 consistency value in tail: 0xada72301 check value in block header: 0xf30a computed block checksum: 0x5eb9 DBVERIFY - Verification complete Total Pages Examined : 16384 Total Pages Processed (Data) : 1234 Total Pages Failing (Data) : 0 Total Pages Processed (Index): 0 Total Pages Failing (Index): 0 Total Pages Processed (Other): 154 Total Pages Processed (Seg) : 0 Total Pages Failing (Seg) : 0 Total Pages Empty : 14995 Total Pages Marked Corrupt : 1 Total Pages Influx : 0 Total Pages Encrypted : 0 Highest block SCN : 6466979 (0.6466979)
查询表数据报错
[oracle@xifenfei ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Apr 13 20:29:48 2022
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 734892032 bytes
Fixed Size 2256872 bytes
Variable Size 452984856 bytes
Database Buffers 276824064 bytes
Redo Buffers 2826240 bytes
Database mounted.
Database opened.
SQL> select count(1) from t_xifenfei;
select count(1) from t_xifenfei
*
ERROR at line 1:
ORA-01578: ORACLE data block corrupted (file # 5, block # 130)
ORA-01110: data file 5: '/u01/app/oracle/oradata/orcl/t_xifenfei01.dbf'
查询extent信息为空
SQL> select EXTENT_ID , FILE_ID ,BLOCK_ID from dba_extents where segment_name='T_XIFENFEI' and owner='SYS';
no rows selected
SQL> select header_file,header_block from dba_SEGMENTS where segment_name='T_XIFENFEI' and owner='SYS';
HEADER_FILE HEADER_BLOCK
----------- ------------
5 130
SQL> select * from dba_free_space where file_id=5;
TABLESPACE_NAME FILE_ID BLOCK_ID BYTES BLOCKS
------------------------------ ---------- ---------- ---------- ----------
RELATIVE_FNO
------------
T_XFF 5 1408 122683392 14976
5
尝试删除表报错
SQL> drop table t_xifenfei;
drop table t_xifenfei
*
ERROR at line 1:
ORA-01578: ORACLE data block corrupted (file # 5, block # 130)
ORA-01110: data file 5: '/u01/app/oracle/oradata/orcl/t_xifenfei01.dbf'
通过加purge删除成功
SQL> drop table t_xifenfei purge; Table dropped.
删除表成功,但是磁盘空间未释放,通过查询确认变为一个临时段
SQL> select * from dba_free_space where file_id=5;
TABLESPACE_NAME FILE_ID BLOCK_ID BYTES BLOCKS
------------------------------ ---------- ---------- ---------- ----------
RELATIVE_FNO
------------
T_XFF 5 1408 122683392 14976
5
SQL> select segment_name,segment_type,owner from dba_segments where header_file=5;
SEGMENT_NAME
--------------------------------------------------------------------------------
SEGMENT_TYPE OWNER
------------------ ------------------------------
5.130
TEMPORARY SYS
清理临时段,彻底删除segment header异常对象删除后遗症
SQL> exec dbms_space_admin.segment_corrupt('T_XFF',5,130);
PL/SQL procedure successfully completed.
SQL> exec dbms_space_admin.segment_drop_corrupt('T_XFF',5,130);
PL/SQL procedure successfully completed.
SQL> exec DBMS_SPACE_ADMIN.TABLESPACE_REBUILD_BITMAPS ('T_XFF');
PL/SQL procedure successfully completed.
SQL> select segment_name,segment_type,owner from dba_segments where header_file=5;
no rows selected
SQL> select * from dba_free_space where file_id=5;
TABLESPACE_NAME FILE_ID BLOCK_ID BYTES BLOCKS
------------------------------ ---------- ---------- ---------- ----------
RELATIVE_FNO
------------
T_XFF 5 128 133169152 16256
5
ORA-600 ktbsdp2 处理
客户反馈数据库异常:两个节点rac,两个节点都启动,其中一个节点无法正常open,另外一个节点一段时间后也会挂。以下是无法正常open节点报错信息(正常open节点最终挂掉报错信息也是类似)
2022-03-30T19:19:12.870813+08:00 [84321] Successfully onlined Undo Tablespace 4. Undo initialization finished serial:0 start:1728252021 end:1728256302 diff:4281 ms (4.3 seconds) Verifying minimum file header compatibility for tablespace encryption.. Verifying file header compatibility for tablespace encryption completed for pdb 0 2022-03-30T19:19:13.953252+08:00 Database Characterset is ZHS16GBK 2022-03-30T19:19:14.538155+08:00 Errors in file /oracle/app/oracle/diag/rdbms/xff/xff2/trace/xff2_p02o_85718.trc (incident=1093927): ORA-00600: internal error code, arguments: [ktbsdp2], [18446744073709551615], [], [], [], [], [], [], [], [], [], [] Incident details in: /oracle/app/oracle/diag/rdbms/xff/xff2/incident/incdir_1093927/xff2_p02o_85718_i1093927.trc 2022-03-30T19:19:15.536582+08:00 ORACLE Instance xff2 (pid = 57) - Error 607 encountered while recovering transaction (73, 12) on object 112841. 2022-03-30T19:19:33.699944+08:00 Errors in file /oracle/app/oracle/diag/rdbms/xff/xff2/trace/xff2_smon_84007.trc: ORA-00607: Internal error occurred while making a change to a data block ORA-00600: internal error code, arguments: [ktbsdp2], [18446744073709551615], [], [], [], [], [], [], [], [], [], [] 2022-03-30T19:19:34.673840+08:00 Errors in file /oracle/app/oracle/diag/rdbms/xff/xff2/trace/xff2_smon_84007.trc: ORA-00607: Internal error occurred while making a change to a data block ORA-00600: internal error code, arguments: [ktbsdp2], [18446744073709551615], [], [], [], [], [], [], [], [], [], [] 2022-03-30T19:19:34.673954+08:00 Errors in file /oracle/app/oracle/diag/rdbms/xff/xff2/trace/xff2_smon_84007.trc: ORA-00607: Internal error occurred while making a change to a data block ORA-00600: internal error code, arguments: [ktbsdp2], [18446744073709551615], [], [], [], [], [], [], [], [], [], [] Errors in file /oracle/app/oracle/diag/rdbms/xff/xff2/trace/xff2_smon_84007.trc (incident=1092704): ORA-607 [] [] [] [] [] [] [] [] [] [] [] [] Incident details in: /oracle/app/oracle/diag/rdbms/xff/xff2/incident/incdir_1092704/xff2_smon_84007_i1092704.trc 2022-03-30T19:19:35.422779+08:00 ***************************************************************** An internal routine has requested a dump of selected redo. This usually happens following a specific internal error, when analysis of the redo logs will help Oracle Support with the diagnosis. It is recommended that you retain all the redo logs generated (by all the instances) during the past 12 hours, in case additional redo dumps are required to help with the diagnosis. ***************************************************************** 2022-03-30T19:19:36.154689+08:00 Starting background process GTX0 2022-03-30T19:19:36.169007+08:00 GTX0 started with pid=370, OS id=87409 2022-03-30T19:19:36.645876+08:00 USER (ospid: 84007): terminating the instance due to error 607 2022-03-30T19:19:36.680109+08:00 opiodr aborting process unknown ospid (87439) as a result of ORA-1092 2022-03-30T19:19:36.681091+08:00 ORA-1092 : opitsk aborting process 2022-03-30T19:19:36.740357+08:00 System state dump requested by (instance=2, osid=84007 (SMON)), summary=[abnormal instance termination]. System State dumped to trace file /oracle/app/oracle/diag/rdbms/xff/xff2/trace/xff2_diag_83895_20220330191936.trc 2022-03-30T19:19:40.135579+08:00 Instance terminated by USER, pid = 84007
对于上述报错信息分析,初步判断是由于事务异常导致,查询mos发现类似报错Bug 32208691 – After upgrade from 12.1 to 19.3 drop columns fails ORA-600[ktbsdp2] ORA-600[4512] (Doc ID 32208691.8),通过咨询客户,确认他们这边是通过plsql dev工具对id为112841表进行增加列的时候网络中断导致增加失败,后续我尝试对该表进行查询发现也报该错误,基本上可以确认由于该表事务异常导致,通过dul把该表数据恢复,然后drop 该表,数据库启动正常,未见其他报错,通过hcheck检查,数据库字典基本一致(除一些统计信息异常,原则上不影响数据库运行)
[oracle@xifenfei2 ~]$ sqlplus / as sysdba @hcheck.sql
SQL*Plus: Release 12.2.0.1.0 Production on Thu Mar 31 00:38:32 2022
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
HCheck Version 07MAY18 on 31-MAR-2022 00:38:34
----------------------------------------------
Catalog Version 12.2.0.1.0 (1202000100)
db_name: xff
Is CDB?: NO
Catalog Fixed
Procedure Name Version Vs Release Timestamp
Result
------------------------------ ... ---------- -- ---------- --------------
------
.- LobNotInObj ... 1202000100 <= *All Rel* 03/31 00:38:34 PASS
.- MissingOIDOnObjCol ... 1202000100 <= *All Rel* 03/31 00:38:34 PASS
.- SourceNotInObj ... 1202000100 <= *All Rel* 03/31 00:38:34 PASS
.- OversizedFiles ... 1202000100 <= *All Rel* 03/31 00:38:38 PASS
.- PoorDefaultStorage ... 1202000100 <= *All Rel* 03/31 00:38:38 PASS
.- PoorStorage ... 1202000100 <= *All Rel* 03/31 00:38:38 PASS
.- TabPartCountMismatch ... 1202000100 <= *All Rel* 03/31 00:38:38 PASS
.- OrphanedTabComPart ... 1202000100 <= *All Rel* 03/31 00:38:38 PASS
.- MissingSum$ ... 1202000100 <= *All Rel* 03/31 00:38:38 PASS
.- MissingDir$ ... 1202000100 <= *All Rel* 03/31 00:38:38 PASS
.- DuplicateDataobj ... 1202000100 <= *All Rel* 03/31 00:38:40 PASS
.- ObjSynMissing ... 1202000100 <= *All Rel* 03/31 00:38:42 PASS
.- ObjSeqMissing ... 1202000100 <= *All Rel* 03/31 00:38:42 PASS
.- OrphanedUndo ... 1202000100 <= *All Rel* 03/31 00:38:44 PASS
.- OrphanedIndex ... 1202000100 <= *All Rel* 03/31 00:38:44 PASS
.- OrphanedIndexPartition ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- OrphanedIndexSubPartition ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- OrphanedTable ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- OrphanedTablePartition ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- OrphanedTableSubPartition ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- MissingPartCol ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- OrphanedSeg$ ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- OrphanedIndPartObj# ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- DuplicateBlockUse ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- FetUet ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- Uet0Check ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- SeglessUET ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- BadInd$ ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- BadTab$ ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- BadIcolDepCnt ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- ObjIndDobj ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- TrgAfterUpgrade ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- ObjType0 ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- BadOwner ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- StmtAuditOnCommit ... 1202000100 <= *All Rel* 03/31 00:38:45 PASS
.- BadPublicObjects ... 1202000100 <= *All Rel* 03/31 00:38:46 PASS
.- BadSegFreelist ... 1202000100 <= *All Rel* 03/31 00:38:50 PASS
.- BadDepends ... 1202000100 <= *All Rel* 03/31 00:38:50 PASS
.- CheckDual ... 1202000100 <= *All Rel* 03/31 00:38:57 PASS
.- ObjectNames ... 1202000100 <= *All Rel* 03/31 00:38:57 WARN
HCKW-0018: OBJECT name clashes with SCHEMA name (Doc ID 2363142.1)
Schema=MHWZ PACKAGE=MHWZ.MHWZ
Schema=MHWZ PACKAGE BODY=MHWZ.MHWZ
.- BadCboHiLo ... 1202000100 <= *All Rel* 03/31 00:39:01 WARN
HCKW-0019: HIST_HEAD$.LOWVAL > HIVAL (Doc ID 1361047.1)
OBJ# 324163 INTCOL#=22
OBJ# 482668 INTCOL#=4
OBJ# 442865 INTCOL#=31
OBJ# 436924 INTCOL#=31
OBJ# 580529 INTCOL#=8
OBJ# 459432 INTCOL#=31
OBJ# 451260 INTCOL#=31
OBJ# 530980 INTCOL#=21
OBJ# 498442 INTCOL#=5
OBJ# 652114 INTCOL#=8
OBJ# 701695 INTCOL#=21
OBJ# 831961 INTCOL#=31
OBJ# 831962 INTCOL#=31
OBJ# 831963 INTCOL#=31
.- ChkIotTs ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- NoSegmentIndex ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- BadNextObject ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- DroppedROTS ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- FilBlkZero ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- DbmsSchemaCopy ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- OrphanedIdnseqObj ... 1202000100 > 1201000000 03/31 00:39:09 PASS
.- OrphanedIdnseqSeq ... 1202000100 > 1201000000 03/31 00:39:09 PASS
.- OrphanedObjError ... 1202000100 > 1102000000 03/31 00:39:09 PASS
.- ObjNotLob ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- MaxControlfSeq ... 1202000100 <= *All Rel* 03/31 00:39:09 PASS
.- SegNotInDeferredStg ... 1202000100 > 1102000000 03/31 00:39:13 PASS
.- SystemNotRfile1 ... 1202000100 > 902000000 03/31 00:39:13 PASS
.- DictOwnNonDefaultSYSTEM ... 1202000100 <= *All Rel* 03/31 00:39:13 PASS
.- OrphanTrigger ... 1202000100 <= *All Rel* 03/31 00:39:13 PASS
.- ObjNotTrigger ... 1202000100 <= *All Rel* 03/31 00:39:13 PASS
---------------------------------------
31-MAR-2022 00:39:13 Elapsed: 39 secs
---------------------------------------
Found 0 potential problem(s) and 16 warning(s)
Contact Oracle Support with the output and trace file
to check if the above needs attention or not
PL/SQL procedure successfully completed.
Statement processed.
Complete output is in trace file:
/oracle/app/oracle/diag/rdbms/xff/xff2/trace/xff2_ora_26887_HCHECK.trc


加我微信(17813235971)
加我QQ(107644445)

