错误描述:
Alert日志不断报错如下:
ORA-00600: internal error code, arguments: [733], [1073732408], [top call heap], [], [], [], [], []
Mon Oct 30 23:23:40 2006
Errors in file /oracle/app/oracle/admin/ora9i/udump/ora9i_ora_10144.trc:
ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []
Mon Oct 30 23:27:13 2006
ORACLE Instance ora9i (pid = 6) - Error 600 encountered while recovering transaction (2, 23) on object 821401.
Mon Oct 30 23:27:13 2006
Errors in file /oracle/app/oracle/admin/ora9i/bdump/ora9i_smon_9648.trc:
ORA-00600: internal error code, arguments: [6006], [1], [], [], [], [], [], []
Trace文件暴涨。达到10G,摘录部分错误如下:
trace之一:
*** 2006-10-27 12:23:51.414
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [733], [1073732408], [top call heap], [], [], [], [], []
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedmp()+328 CALL ksedst()+0 FFFFFFFF7FFF7510 ?
000000000 ? 000000000 ?
00000003E ?
FFFFFFFF7FFF7DA8 ?
10305F988 ?
kgeriv()+208 PTR_CALL 0000000000000000 000000000 ? 000103400 ?
00010345F ? 000102C00 ?
10345F000 ? 10345FE70 ?
kgesiv()+108 CALL kgeriv()+0 1034600D0 ? 10357E828 ?
000000258 ? 0000013C8 ?
FFFFFFFF7FFF86D8 ?
1034614A0 ?
ksesic2()+92 CALL kgesiv()+0 1034600D0 ? 10357E828 ?
0000002DD ? 000000002 ?
FFFFFFFF7FFF86D8 ?
000000000 ?
ksmarfg()+372 CALL ksesic2()+0 0000002DD ? 000000000 ?
03FFFDB38 ? 000000001 ?
00000000D ? 103463514 ?
kghgex()+1072 PTR_CALL 0000000000000000 1034600D0 ? 00000FFFF ?
03FFFDB38 ? 03FFFDB38 ?
103463510 ? 103463508 ?
kghfnd()+548 CALL kghgex()+0 000072FFF ? 0000000B8 ?
000007FFF ? 103463514 ?
000002000 ? 000001000 ?
kghalo()+520 CALL kghfnd()+0 1034636D0 ? 1034636E8 ?
1034600D0 ? 03FFFDB28 ?
03FFFDB28 ? 000000000 ?
kghgex()+332 CALL kghalo()+0 000000000 ? 000000018 ?
1034600D0 ? 000001000 ?
000000000 ? 000000000 ?
kghalf()+616 CALL kghgex()+0 000072FFF ? 000007FFF ?
000007FFF ? 1034628EC ?
000002000 ? 000000000 ?
kdxd4ckf()+68 PTR_CALL 0000000000000000 1034600D0 ? 103462940 ?
trace之二:
Dump kdilk : itl=3, kdxlkflg=0x1 sdc=0 indexid=0x1c40500c block=0x1c426763
purge leaf row
(11): 03 c2 02 16 06 23 81 2a e5 00 1c
dump block being looked at now
Block header dump: 0x1c426763
Object id on Block? Y
seg/obj: 0xc8899 csc: 0x81b.d4c5daee itc: 3 flg: E typ: 2 - INDEX
brn: 0 bdba: 0x1c42640c ver: 0x01
inc: 0 exflg: 0
Itl Xid Uba Flag Lck Scn/Fsc
0x01 0x000f.000.0006cca6 0x2304caa1.000f.01 CB-- 0 scn 0x081b.b862f84d
0x02 0x000f.02d.0006c169 0x2304cb21.000f.1b C-U- 0 scn 0x081b.d4c4e4cc
0x03 0x0000.000.00000000 0x00000000.0000.00 ---- 0 fsc 0x0000.00000000
Leaf block dump
===============
header address 19375988860=0x482e6207c
kdxcolev 0
KDXCOLEV Flags = - - -
kdxcolok 0
kdxcoopc 0x80: opcode=0: iot flags=--- is converted=Y
该错误没有造成业务中断,但trace文件增长很快,在10小时的观察中trace文件增大了几个GB,
诊断结果:
由于系统原先是采用pfile启动数据库,为了方便将来的使用与维护,我们把系统改为了使用spfile来启动数据库,操作如下:
Create spfile from pfile;
查看系统参数,发现pga_aggregate_target大小仅为20M。
分析alert日志连同trace文件后,发现ORA-00600: internal error code, arguments: [733], [1073732408], [top call heap], [], [], [], [], []错误是由pga在内存分配时出现的一个错误。此错误为oracle9201上的一个bug#: 3299546。但可避免此BUG的触发。解决方法为增大PGA 的大小, 在此基础上,将初始化参数pga_aggregate_target修改为2GB后错误消失,此操作过程为:
Alter system set pga_aggregate_target='2000M' scope=both;
而ORA-00600: internal error code, arguments: [6006], [1], [], [], [], [], [], []错误则主要是object_id为821401这个对象出现了逻辑损坏,我们根据dba_objects查看该object为一个index, 将此索引进行rebuild后,该600错误消除,将该索引rebuild的脚本为:
SQL> col owner format a10
SQL> col object_type format a10
SQL> col object_name format a30
SQL> select owner,object_type,object_name from dba_objects where object_id=821401;
OWNER OBJECT_TYP OBJECT_NAME
---------- ---------- ------------------------------
LBAS INDEX IDX_BSA_ACCT_ITEM_TYPE_ID[size=small][/size]
SQL>alter index lbas.IDX_BSA_ACCT_ITEM_TYPE_ID rebuild
重建完该索引,观察系统两天没有出现任何错误。
分享到:
相关推荐
在oracle里面运行一下,解决Exception java.sql.SQLException ORA-00600 内部错误代码
Oracle 错误处理 - ORA-00600[4194] Oracle 错误代码 ORA-00600 是一个内部错误代码,通常是由数据库内部机制引起的。该错误代码可以有多种不同的参数,例如在本文中的 [4194]。在这里,我们将讨论如何处理通过隐含...
在Oracle数据库管理中,"ORA-00600"是一个内部错误代码,通常表示数据库遇到了一个未知或未处理的内部错误。这个错误是由于多种原因引起的,包括数据文件损坏、控制文件问题、实例恢复不完整或者软件bug等。在描述中...
ORA-00600错误通常涉及到数据库的内部一致性问题,这可能是由于软件bug、硬件故障、数据损坏或者不兼容的更新导致的。其中,17059是特定的错误子类型,而0X93953434可能是一个内存地址或者内部状态值,用于帮助诊断...
ora-00604 错误 解决 方法 ora-00604 错误 解决 方法 ora-00604 错误 解决 方法 ora-00604 错误 解决 方法 ora-00604 错误 解决 方法ora-00604 错误 解决 方法
在Oracle数据库管理与维护过程中,有时会遇到一些内部错误,其中ORA-00600和ORA-1502是较为常见的两类错误之一。本文将详细解析这两种错误的具体含义、发生原因以及解决方法。 #### 二、ORA-00600 错误 **错误定义...
NULL 博文链接:https://gembler.iteye.com/blog/346242
Oracle数据库报错ORA-00600是一个内部错误,通常表示系统遇到了未预见的问题或已知的软件缺陷。这个错误通常与Oracle的内核代码有关,而不是用户的SQL操作。在描述中,我们看到错误与“kcblasm_1”和参数103相关联,...
ORA-00600 错误通常被视为 Oracle 数据库中最严重的一类错误之一,这类错误通常意味着数据库内核中出现了某种异常情况。由于这类错误往往与数据库的核心组件紧密相关,因此它们通常难以诊断和修复,并且可能对数据库...
这篇文章主要讲述了在Oracle 11g R2客户端尝试连接Oracle 19c服务端时,遇到了两个特定的错误:ORA-28040和ORA-01017,以及如何解决这些问题。 ORA-28040错误是因为客户端和数据库服务器在版本兼容性上存在不匹配。...
标题和描述中提到的是关于如何解决Oracle数据库系统中出现的Ora-00600错误的故障处理方法。Ora-00600错误是Oracle数据库内部错误,通常表明系统遇到了无法处理的异常情况。这篇文档可能提供了解决这个问题的步骤和...
Oracle 11g 内部错误代码 ORA-00600 是一个非常通用的错误,它表示数据库遇到了一个无法处理的内部错误或异常情况。这个错误通常涉及到Oracle数据库的底层结构,如数据块、索引或者内存管理等,且参数列表可以提供...
### ERwin连接Oracle报ORA-01041内部错误,hostdef扩展名不存在的知识点解析 #### 一、问题背景及概述 在使用ERwin数据建模工具连接Oracle数据库时,可能会遇到ORA-01041内部错误提示:“hostdef扩展名不存在”。...
在使用Oracle Data Pump工具IMPDP(Import Data Pump)进行数据导入的过程中,可能会遇到ORA-39002和ORA-39070等错误。本文将针对这些错误的排查方法进行详细介绍,帮助用户理解问题的原因及解决策略。 ### 错误...
关于CRA-00600:内部代码错误解决,这一主题主要聚焦于Oracle数据库中一个常见的技术难题——ORA-00600错误的识别与处理。ORA-00600是一种内部错误,通常指向Oracle数据库内核中的某种异常情况,其参数列表如[19004]...
ORA-12541 TNSno listener 的解决方案 ORA-12541 TNSno listener 的解决方案
在Oracle数据库管理过程中,遇到ORA-00132和ORA-00214这类错误时,往往意味着数据库配置或启动过程中出现了问题。下面将对这两个错误进行详细解析,并给出相应的解决方案。 #### 二、ORA-00132: Syntax Error or ...
例如,ORA-00600是内部错误,表明数据库遇到了未预期的情况,可能需要数据库恢复或与Oracle技术支持联系。而ORA-00911表示输入的字符串超过了允许的最大长度,这在编写SQL语句时需要注意。 从ORA-10000到ORA-19999...