记录一次ORA-00600 [kdsgrp1]导致的large tracefile的处理过程

这篇具有很好参考价值的文章主要介绍了记录一次ORA-00600 [kdsgrp1]导致的large tracefile的处理过程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.问题描叙

收到check_mk告警,约在15:17左右硬盘空间消耗暴增
记录一次ORA-00600 [kdsgrp1]导致的large tracefile的处理过程,Oracle,oracle

2 查因过程

2.1 查看磁盘空间状况

u1很快被耗尽

[oracle@gsierp ~]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              45G   16G   27G  38% /
/dev/sda1             2.0G   52M  1.8G   3% /boot
tmpfs                  16G   16K   16G   1% /dev/shm
/dev/sdd               99G   78G   16G  84% /u3
/dev/sde               99G   30G   64G  33% /u4
/dev/sdb1             197G  196G  114M 100% /u1
/dev/sdc1              74G   68G  2.6G  97% /u2

2.2 检查表空间增长情况

从输出结果来看,并没有异常增长,看来问题不在数据库数据文件

select a.snap_id,a.dbid,a.tablespace_id,a.tablespace_size max_tablespace_size,b.tablespace_size min_tablespace_size,
a.tablespace_usedsize max_tablespace_usedsize,b.tablespace_usedsize min_tablespace_usedsize,
round(a.tablespace_size-b.tablespace_size,2) diff_tablespace_size,
round((a.tablespace_usedsize-b.tablespace_usedsize)*8/1024/1024,2) diff_tablespace_usedsize
from 
(select su.snap_id,su.dbid,su.tablespace_id,su.tablespace_size,su.tablespace_usedsize from dba_hist_tbspc_space_usage su
join dba_hist_snapshot sn on su.snap_id=sn.snap_id
join (select MAX(SNAP_ID) MAX_SNAP_ID,MIN(SNAP_ID) MIN_SNAP_ID from dba_hist_snapshot where to_char(begin_interval_time,'YYYY-MM-DD HH24:MI:SS') LIKE '2023-08-29%') msn
on su.snap_id=msn.max_snap_id) a,
(select su.snap_id,su.dbid,su.tablespace_id,su.tablespace_size,su.tablespace_usedsize from dba_hist_tbspc_space_usage su
join dba_hist_snapshot sn on su.snap_id=sn.snap_id
join (select MAX(SNAP_ID) MAX_SNAP_ID,MIN(SNAP_ID) MIN_SNAP_ID from dba_hist_snapshot where to_char(begin_interval_time,'YYYY-MM-DD HH24:MI:SS') LIKE '2023-08-29%') msn
on su.snap_id=msn.min_snap_id) b
where a.dbid=a.dbid and a.tablespace_id=b.tablespace_id
  SNAP_ID       DBID TABLESPACE_ID MAX_TABLESPACE_SIZE MIN_TABLESPACE_SIZE MAX_TABLESPACE_USEDSIZE MIN_TABLESPACE_USEDSIZE DIFF_TABLESPACE_SIZE DIFF_TABLESPACE_USEDSIZE
---------- ---------- ------------- ------------------- ------------------- ----------------------- ----------------------- -------------------- ------------------------
     76920 2922139705             0               92800               92800                   92344                   92344                    0                        0
     76920 2922139705             1             4971008             4971008                   67408                   55632                    0                      .09
     76920 2922139705             2              179200              179200                  160072                  160560                    0                        0
     76920 2922139705             4              145440              145440                  144776                  144776                    0                        0
     76920 2922139705             5            11308928            11308928                10512584                10512584                    0                        0
     76920 2922139705             6             1876224             1876224                 1544152                 1544152                    0                        0
     76920 2922139705             8             3055360             3055360                 2682048                 2682048                    0                        0
     76920 2922139705             9             1462016             1462016                 1179416                 1179416                    0                        0
     76920 2922139705            11            12390896            12390896                12068792                12022072                    0                      .36
     76920 2922139705            12             1420800             1420800                  976688                  976688                    0                        0
     76920 2922139705            14             2706560             2706560                 2659040                 2659040                    0                        0

   SNAP_ID       DBID TABLESPACE_ID MAX_TABLESPACE_SIZE MIN_TABLESPACE_SIZE MAX_TABLESPACE_USEDSIZE MIN_TABLESPACE_USEDSIZE DIFF_TABLESPACE_SIZE DIFF_TABLESPACE_USEDSIZE
---------- ---------- ------------- ------------------- ------------------- ----------------------- ----------------------- -------------------- ------------------------
     76920 2922139705            15              749440              749440                  735440                  735440                    0                        0
     76920 2922139705            16                1280                1280                     232                     232                    0                        0
     76920 2922139705            17             1310720             1310720                       0                       0                    0                        0

2.3 检查$ORACLE_BASE相关文件

最终检查到udump目录的大小达27G之多

[oracle@gsierp pyia]$ du -sh $ORACLE_BASE/admin/pyia/*
63M     ./adump
20G     ./adump.old
364M    ./bdump
24K     ./cdump
27G     ./udump
[oracle@gsierp udump]$ ls -alh --full-time|grep "2023-08-29"
-rw-r----- 1 oracle oinstall   25G 2023-08-29 15:49:52.771222574 +0700 pyia_ora_11160.trc

2.4查看trace file内容

由于文件size太大,先使用head命令查看头部信息

[oracle@gsierp udump]$ head -n 100 pyia_ora_11160.trc |more
/u1/admin/pyia/udump/pyia_ora_11160.trc
Oracle Database 10g Release 10.2.0.5.0 - 64bit Production
ORACLE_HOME = /oracle/app/product/10.2.0
System name:    Linux
Node name:      gsierp
Release:        2.6.32-300.10.1.el5uek
Version:        #1 SMP Wed Feb 22 17:37:40 EST 2012
Machine:        x86_64
Instance name: pyia
Redo thread mounted by this instance: 1
Oracle process number: 56
Unix process pid: 11160, image: oracle@gsierp

*** 2023-08-29 15:02:41.341
*** ACTION NAME:() 2023-08-29 15:02:41.341
*** MODULE NAME:(app_sis_sap.exe) 2023-08-29 15:02:41.341
*** SERVICE NAME:(SYS$USERS) 2023-08-29 15:02:41.341
*** SESSION ID:(920.29479) 2023-08-29 15:02:41.341
            row 088e32c5.1 continuation at
            file# 34 block# 930501 slot 2 not found
**************************************************
KDSTABN_GET: 0 ..... ntab: 1
curSlot: 2 ..... nrows: 15
**************************************************
*** 2023-08-29 15:02:41.341
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], []
Current SQL statement for this session:
AND TRIM(NVL(TRIM(A.POSNR), TRIM(SIZE_NO))) = TRIM(DECODE(TRIM(B.POSNR),'000000', B.WO_SIZE
FROM SAP_WO A,BARUM(B.QTY) QTY,03', 'ZP04', 'ZP10', 'ZP14')) = 'REL'
SELEN ALLA.AUFNRIN ('ZP02', 'ZP03', 'ZP04', 'ZP10', 'ZP14')) = 'REL'
AND NOT A.AUART IN ('ZP02', 'ZP03', 'ZP04', 'ZP10ASTNR,'N')) = 'REL'
AND NOTSTR(A.PLNBEZ, 1, 2) = 'FG' AND TRIM(NVL(A.ASTNR,'N')) = 'REL'
AND SUBSTR(A.PLNBEZ, 1, 2) = 'FG'  B.PROD_BATCH ='10422479-0010'
/*ERE A.AUFNR = B.AUFNR(+), 'ZP03', 'ZP04', 'ZP10', 'ZP14')
SELECT A.AUFNR,A.WO_SIZE,A.GAMNG,B.QTY BAR_QTY
  FROM
  (SELECT B.AUFNR, B.WO_SIZE WO_SIZE, SUM(B.GAMNG) GAMNG
     FROM ODRD A, SAP_WO B
    WHERE A.FACT_ODR_NO = B.PROD_BATCH
      AND TRIM(NVL(TRIM(A.POSNR), TRIM(SIZE_NO))) = TRIM(DECODE(TRIM(B.POSNR),'000000', B.WO_SIZE, B.POSNR))
      AND B.PROD_BATCH = :AS_PROD_BATCH
      AND SUBSTR(B.PLNBEZ, 1, 2) = :AS_KIND  AND TRIM(NVL(B.ASTNR,'N')) = 'REL'
      AND NOT B.AUART IN ('ZP02', 'ZP03', 'ZP04', 'ZP10', 'ZP14')
   GROUP BY B.AUFNR, B.WO_SIZE) A,
  (SELECT A.AUFNR,SUM(B.QTY) QTY
     FROM SAP_WO A,BARM_1 B
    WHERE A.AUFNR = B.AUFNR
      AND A.PROD_BATCH = :AS_PROD_BATCH
      AND SUBSTR(A.PLNBEZ, 1, 2) = :AS_KIND  AND TRIM(NVL(A.ASTNR,'N')) = 'REL'
      AND NOT A.AUART IN ('ZP02', 'ZP03', 'ZP04', 'ZP10', 'ZP14')
   GROUP BY A.AUFNR
UNION ALL
   SELECT A.AUFNR,SUM(B.QTY) QTY
     FROM SAP_WO A,BARM_3 B
    WHERE A.AUFNR = B.AUFNR
      AND A.PROD_BATCH = :AS_PROD_BATCH 
      AND SUBSTR(A.PLNBEZ, 1, 2) = :AS_KIND  AND TRIM(NVL(A.ASTNR,'N')) = 'REL'
      AND NOT A.AUART IN ('ZP02', 'ZP03', 'ZP04', 'ZP10', 'ZP14')
   GROUP BY A.AUFNR
   UNION ALL
   SELECT A.AUFNR,SUM(B.QTY) QTY
     FROM SAP_WO A,BARM_4 B
    WHERE A.AUFNR = B.AUFNR
      AND A.PROD_BATCH = :AS_PROD_BATCH
      AND SUBSTR(A.PLNBEZ, 1, 2) = :AS_KIND  AND TRIM(NVL(A.ASTNR,'N')) = 'REL'
      AND NOT A.AUART IN ('ZP02', 'ZP03', 'ZP04', 'ZP10', 'ZP14')
   GROUP BY A.AUFNR
   UNION ALL
   SELECT A.AUFNR,SUM(B.QTY) QTY
     FROM SAP_WO A,BARM_5 B
    WHERE A.AUFNR = B.AUFNR
      AND A.PROD_BATCH = :AS_PROD_BATCH
      AND SUBSTR(A.PLNBEZ, 1, 2) = :AS_KIND  AND TRIM(NVL(A.ASTNR,'N')) = 'REL'
      AND NOT A.AUART IN ('ZP02', 'ZP03', 'ZP04', 'ZP10', 'ZP14')
   GROUP BY A.AUFNR) B
 WHERE A.AUFNR = B.AUFNR(+)
/*
SELECT B.AUFNR,B.WO_SIZE WO_SIZE,SUM(B.GAMNG) GAMNG,
       NVL(SUM((SELECT SUM(QTY) FROM BARM_1 Z WHERE Z.AUFNR=B.AUFNR)),0)+
       NVL(SUM((SELECT SUM(QTY) FROM BARM_3 Z WHERE Z.AUFNR=B.AUFNR)),0)+
       NVL(SUM((SELECT SUM(QTY) FROM BARM_4 Z WHERE Z.AUFNR=B.AUFNR)),0)+
       NVL(SUM((SELECT SUM(QTY) FROM BARM_5 Z WHERE Z.AUFNR=B.AUFNR)),0) BAR_QTY 
FROM ODRD A,SAP_WO B
WHERE A.FACT_ODR_NO       = B.PROD_BATCH   AND 
                TRIM(NVL(TRIM(A.POSNR),TRIM(SIZE_NO)))=TRIM(DECODE(TRIM(B.POSNR),'000000',B.WO_SIZE,B.POSNR)) AND
           B.PROD_BATCH        =:AS_PROD_BATCH  AND 
      SUBSTR(B.PLNBEZ,1,2)=:AS_KIND        AND
                b.AUART NOT IN ('ZP02','ZP03','ZP04','ZP10','ZP14') 
GROUP BY B.AUFNR,B.WO_SIZE 
*/

从输出看出:
file# 34 block# 930501 slot 2 not found
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], []
触发错误的是一个select查询语句,由此推断,select在执行过程中,遇到file# 34 block# 930501 slot 2 not found,导致ORA-00600错误
这很可能是一个物理错误或者逻辑错误

3.处理过程

3.1数据文件检查

先对涉及的file# 34作一个dbv检验,看看是否有物理损坏

[oracle@gsierp ~]$ dbv userid='system/"XXX123OSrr07g4KaFLCCs7c/"'  file='/u4/oradata/pyia/sisdata03.dbf'  blocksize=8192

DBVERIFY: Release 10.2.0.5.0 - Production on Wed Aug 30 15:58:47 2023
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
DBVERIFY - Verification starting : FILE = /u4/oradata/pyia/sisdata03.dbf
DBVERIFY - Verification complete
Total Pages Examined         : 1937920
Total Pages Processed (Data) : 965136
Total Pages Failing   (Data) : 0
Total Pages Processed (Index): 793739
Total Pages Failing   (Index): 0
Total Pages Processed (Other): 172036
Total Pages Processed (Seg)  : 354
Total Pages Failing   (Seg)  : 0
Total Pages Empty            : 6655
Total Pages Marked Corrupt   : 0
Total Pages Influx           : 0
Highest block SCN            : 335941877 (2475.335941877)

从检查结果来看,数据文件正常,没有发现问题

3.2 表及索引段检查

先定位出file# 34 block# 930501 slot 2 not found所涉及的表

SQL> select * from dba_extents where file_id=34 and 930501 between block_id and block_id+blocks;

OWNER                SEGMENT_NAME                   PARTITION_NAME                 SEGMENT_TYPE       TABLESPACE_NAME       EXTENT_ID    FILE_ID   BLOCK_ID      BYTES     BLOCKS RELATIVE_FNO
-------------------- ------------------------------ ------------------------------ ------------------ -------------------- ---------- ---------- ---------- ---------- ---------- ------------
PGDSISSAP            SAP_WO                                                        TABLE              SIS_DATA                      2         34     929801   41943040       5120           34

分析涉事的表及其索引,结果也正常

SQL> analyze table pgdsissap.sap_wo validate structure cascade;
Table analyzed.

清空buffer_cache后,做一次全表扫描涉事的表,还是正常

ALTER SYSTEM FLUSH BUFFER_CACHE;
select * from pgdsissap.sap_wo
 COUNT(*)
----------
    298678

4.结论:

最后,结合整理网上网友观点:
坏块可能出现再内存中,经过一段时间,buffer cache中的坏块内容已经被age out(老化),所以已经无法重现(甚至不用做任何操作)文章来源地址https://www.toymoban.com/news/detail-686357.html

到了这里,关于记录一次ORA-00600 [kdsgrp1]导致的large tracefile的处理过程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Elasticsearch】Elasticsearch中使用_id排序导致 data too large 问题

    Elasticsearch 一个弹性伸缩的搜索数据库,后文简称 :ES ,最近有一个ES 服务查询数据时候出现了数据 Hits 结果多次查询不一致的问题,而且这块代码已经很长时间没有修改,一直稳定运行了很长时间,用户翻译查询列表数据的时候又是出现1条,有时候出现2条或者3条。(再加上

    2024年02月03日
    浏览(36)
  • Oracle ORA-01033: ORACLE initialization or shutdown in progress(误删了DBF数据库文件导致)解决方法

    先声明一下前期的一些手欠欠儿的操作导致oracl登录不进去了,起先是清理磁盘空间的时候误删除了orcle DBF数据文件后无法进入系统,plsql登录报错如下: 一般情况下,删除表空间的正确方法是: DROP TABLESPACE BDCDJ INCLUDING CONTENTS AND DATAFILES; 如果没有通过以上命令删除而直接删

    2024年02月02日
    浏览(69)
  • ora2pg使用记录

    这篇文章是我在学习使用 ora2pg 过程中的 学习记录 ,以便日后遗忘查阅; 诸君也可跟随我的步伐了解一下 ora2pg ,或可移步如下官方文档参考学习:Ora2Pg : Migrates Oracle to PostgreSQL (darold.net) 本文的 ora2pg 安装和使用记录是在 win10 系统下迁移远程Oracle数据库到远程PostgreSQL数据库

    2024年02月08日
    浏览(35)
  • ES:一次分片设计问题导致的故障

    1. 单节点CPU持续高  2.写入骤降 3.线程池队列积压,但没有reject  4.使用方没有记录日志 1.ES监控 只能看到相应的结果指标,无法反应出原因。 2.ES日志:大量日志打印相关异常(routate等调用栈) 3.查询CPU的使用,GET _nodes/hot_threads “CPU高” 和写入、日志打印相关,无法获取更

    2024年02月11日
    浏览(39)
  • 记一次javaMetaspace导致CPU200%的排查

    insertMotionDataByWxCallBack方法并发多(其实也没多少,可能就3个?)就导致CPU200%了,本地没法复现。 看报错是:java.lang.OutOfMemoryError: Metaspace,刚开始的时候眼挫,忽略了后面的Metaspace,只看到了OutOfMemoryError,就各种找代码问题。 https://arthas.aliyun.com/doc/install-detail.html 然后发现

    2023年04月24日
    浏览(52)
  • 记一次etcd全局锁使用不当导致的事故

    前两天,现场的同事使用开发的程序测试时,发现日志中报 etcdserver: mvcc: database space exceeded ,导致 etcd 无法连接。很奇怪,我们开发的程序只用到了 etcd 做程序的主备,并没有往 etcd 中写入大量的数据,为什么会造成 etcd 空间不足呢?赶紧叫现场的同事查了下 etcd 存储数据的

    2024年02月11日
    浏览(44)
  • 一次Python本地cache不当使用导致的内存泄露

    近期一个大版本上线后,Python编写的api主服务使用内存有较明显上升,服务重启后数小时就会触发机器的90%内存占用告警,分析后发现了本地cache不当使用导致的一个内存泄露问题,这里记录一下分析过程。 该cache大概实现代码如下: 如上述代码,该LocalCache核心在于一个存储

    2024年02月11日
    浏览(40)
  • 记一次swoole连接数太多导致的错误

    原先就有点担心这个项目正式上线会出现各种问题,所以刚上线就赶紧查看日志 果然,频繁出现错误: WARNING Server::accept_connection(): accept() failed, Error: Too many open files[24] 这个错误通常是由于操作系统限制了进程能够打开的文件句柄数量,导致当前进程无法打开更多的文件,从

    2024年02月02日
    浏览(48)
  • 【现网】记一次并发冲突导致流量放大的生产问题

    目录 事故现象 转账 业务背景介绍 背景一:转账流程 转账流程 转账异常处理 转账异常处理流程图 背景二:账户系统合并 实际全流程: 背景三:扣内存数据库逻辑 背景四:调用方重试逻辑 问题定位 总结  资料获取方法 生产环境,转账相关请求失败量暴增。 直接原因 现网

    2024年02月14日
    浏览(47)
  • 记一次 .NET某工控 宇宙射线 导致程序崩溃分析

    为什么要提 宇宙射线 , 太阳耀斑 导致的程序崩溃呢?主要是昨天在知乎上看了这篇文章:莫非我遇到了传说中的bug? ,由于 rip 中的0x41变成了0x61出现了bit位翻转导致程序崩溃,截图如下: 下面的评论大多是说由于 宇宙射线 ,这个太玄乎了,说实话看到这个 传说bug 的提法

    2024年02月04日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包