某省电信行业公司数据库ORA-00600 [15160]处理

2014-11-24 17:19:06 · 作者: · 浏览: 0

系统:HP-UX B.11.31


是否RAC:YES


数据库详细版本:10.2.0.4


1. 问题背景


2014-02-26上午10:13:39dbrac库节点2,在alert日志中发现很多ORA-600错误,经分析是表test_wait的统计信息出错导致,重新分析该表的统计信息,错误消除。

2. DBRAC库错误处理过程


1、查看alert日志如下:


Wed Feb 26 10:11:18 2014


ORA-00600: internal error code, arguments: [15160], [], [], [], [], [], [], []


Wed Feb 26 10:12:29 2014


Errors in file /oracle/admin/dbrac/udump/dbrac2_ora_14794.trc:


ORA-00600: internal error code, arguments: [15160], [], [], [], [], [], [], []


Wed Feb 26 10:13:39 2014


Errors in file /oracle/admin/dbrac/udump/dbrac2_ora_29891.trc:


ORA-00600: internal error code, arguments: [15160], [], [], [], [], [], [], []


2、继续分析trace日志如下:


/oracle/admin/dbrac/udump/dbrac2_ora_29891.trc


Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production


With the Partitioning, Real Application Clusters, Data Mining and Real Application Testing options


ORACLE_HOME = /oracle/product/10.2.0/db


System name: HP-UX


Node name: dbrac2


Release: B.11.31


Version: U


Machine: ia64


Instance name: dbrac2


Redo thread mounted by this instance: 2


Oracle process number: 121


Unix process pid: 29891, image: oracle@dbrac2



*** ACTION NAME:() 2014-02-26 10:13:39.698


*** MODULE NAME:(BusiMonitor@ccjkp1 (TNS V1-V3)) 2014-02-26 10:13:39.698


*** SERVICE NAME:(dbrac) 2014-02-26 10:13:39.698


*** SESSION ID:(1491.11581) 2014-02-26 10:13:39.698


*** 2014-02-26 10:13:39.698


ksedmp: internal or fatal error


ORA-00600: internal error code, arguments: [15160], [], [], [], [], [], [], []


Current SQL statement for this session:


select 'M-6M-LM-PM-EM-IM-OM-PM-PM-JM-}M->M-]test_waitM-SM-P'||count(1)||'M-LM-uM-

om test_wait where recvtime < sysdate -10/1440 and stepnow=0 having
count(1) >=1
----- Call Stack Trace -----


calling call entry argument values in hex


location type point ( means dubious value)


-------------------- -------- -------------------- ----------------------------


ksedst()+64 call ksedst1() 000000000 000000001


ksedmp()+2176 call ksedst() 000000000


C000000000000C9F


4000000003ECA500


000000000 000000000


000000000


ksfdmp()+48 call ksedmp() 000000003


kgeriv()+336 call ksfdmp() C000000000000695


000000003


4000000009382BA0


000020127 000000000


000000000 000000000


000000000


kgesiv()+192 call kgeriv() 6000000000031370


6000000000032428


40000000018D14C0


000000000


9FFFFFFFFFFEE7E8


3、进一步分析是有以下SQL触发ORA-600


select 'M-6M-LM-PM-EM-IM-OM-PM-PM-JM-}M->M-]test_waitM-SM-P'||count(1)||'M-LM-uM-

om test_wait where recvtime < sysdate -10/1440 and stepnow=0 having count(1) >=1


--------------------------------------分割线 --------------------------------------


--------------------------------------分割线 --------------------------------------