Oracle故障解决之索引坏块修复 ORA-00600: internal error, arguments: [6200]
问题背景:
客户反馈DB每天产生的incident日志很多,需协助排查原因
1> 查看alert日志
查看alert日志发现大量的ORA-07445、ORA-00600错误
Errors in file data/oracle/diag/rdbms/bydata/bydata/trace/bydata_mmon_3667.trc (incident=111052):
ORA-00600: internal error code, arguments: [6200], [18446744073709551615], [], [], [], [], [], [], [], [], [], []
Exception [type: SIGSEGV, SI_KERNEL(general_protection)] [ADDR:0x0] [PC:0x2278EA1, kghstack_err()+85] [flags: 0x0, count: 1]
Errors in file data/oracle/diag/rdbms/bydata/bydata/trace/bydata_mmon_3667.trc (incident=111053):
ORA-07445: exception encountered: core dump [kghstack_err()+85] [SIGSEGV] [ADDR:0x0] [PC:0x2278EA1] [SI_KERNEL(general_protection)] []
ORA-00600: internal error code, arguments: [6200], [18446744073709551615], [], [], [], [], [], [], [], [], [], []
Incident details in: data/oracle/diag/rdbms/bydata/bydata/incident/incdir_111053/bydata_mmon_3667_i111053.trc
Mon Oct 21 09:50:30 2019
复制
ORA-600被证明为oracle的内部错误,通常由数据文件的坏块或者oracle的bug引起
2> 首先查看是否有数据文件坏块
[oracle@OA_oracle ~]$ dbv file =/data/oracle/oradata/bydata/SYSAUX01.DBF
DBVERIFY: Release 11.2.0.1.0 - Production on Mon Oct 21 15:12:29 2019
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
DBVERIFY - Verification starting : FILE = data/oracle/oradata/bydata/SYSAUX01.DBF
Block Checking: DBA = 8522163, Block Type = KTB-managed data block
**** row 0: row length 35 past end of block
**** row 0: row skipped so other stats may be wrong
**** row 1: row length 7641 past end of block
**** row 1: row skipped so other stats may be wrong
**** row 2: row length 1002 past end of block
**** row 2: row skipped so other stats may be wrong
**** row 3: row length 1951 past end of block
**** row 3: row skipped so other stats may be wrong
**** row 4: row length 441 past end of block
**** actual free space = -277001 < kdxcoavs = 29
**** key (begin=0x594, len=1438) overlaps with another
begin = 0x5ae len = 1428
---- end index block validation
Page 133555 failed with check code 6401
DBVERIFY - Verification complete
Total Pages Examined : 144640
Total Pages Processed (Data) : 47272
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 39600
Total Pages Failing (Index): 1 ---需要留意
Total Pages Processed (Lob) : 9592
Total Pages Failing (Lob) : 0
Total Pages Processed (Other): 26419
Total Pages Processed (Seg) : 0
Total Pages Failing (Seg) : 0
Total Pages Empty : 21757
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
Total Pages Encrypted : 0
Highest block SCN : 296083261 (0.296083261)
复制
这次检查的有可能存在讹误索引的数据文件是sysaux,对于系统文件无法通过重建索引处理,建议客户重新恢复一个库
2> 如何在ORA-600 [6200] 报错中定位讹误的索引
描述:
在访问某张表时,你遇到ORA-600 [6200]报错,这个报错意味着相关索引被探测到存在讹误。
标准的解决方法是drop掉索引并为这张表重建所有相关索引。
我们可以从trace文件当时生成的报错中定位哪个索引出的问题。
例如:
例子中显示的是从trace文件中看到的索引报错信息。
trace file报错信息:
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [6200], [260], [262], [], [], [], [], []
Block header dump: dba: 0x7b404757
Object id on Block? Y
seg/obj: 0x6190 csc: 0x00.4e537b5 itc: 2 flg: -typ: 2 - INDEX
fsl: 0 fnx: 0x0
复制
注意这里seg/obj指出的Hex值,我们可以将其转为十进制值,这个值就是对象id号。
0x6190 也就是24976 Hex = 00006190 Octal = 00000060620
这样我们就能在DBA_OBJECTS视图中找到索引对象了.
SVRMGR> SELECT OBJECT_ID, OBJECT_NAME
FROM DBA_OBJECTS
WHERE DATA_OBJECT_ID = '24976';
DATA_OBJEC OBJECT_NAME
---------- -----------------------
24976 tab1_index5
复制
tab1_index5,这个索引就是我们应该去重建的那个。
文章转载自数据与人,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
635次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
616次阅读
2025-04-15 17:24:06
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
513次阅读
2025-04-08 09:12:48
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
507次阅读
2025-04-20 10:07:02
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
474次阅读
2025-04-22 00:20:37
Oracle 19c RAC更换IP实战,运维必看!
szrsu
452次阅读
2025-04-08 23:57:08
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
448次阅读
2025-04-22 00:13:51
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
448次阅读
2025-04-17 17:02:24
一页概览:Oracle GoldenGate
甲骨文云技术
447次阅读
2025-04-30 12:17:56
火焰图--分析复杂SQL执行计划的利器
听见风的声音
393次阅读
2025-04-17 09:30:30