暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ORA-00600 Kcfrbd_3 出现在查询 DBA_EXTENTS

原创 盖国强 2019-05-08
940

问题描述

在某些异常情况下,查询数据库的dba_extents字典表时,可能遇到ORA-600 kcfrbd_3错误,这个错误是由于文件大小和控制文件不符合导致的,触发原因可能是数据库写异常,通常可以通过重建控制文件来消除错误。

但是,如果是数据文件头部的信息记录错误,和数据文件本身不符合,则需要修改数据文件头部的文件大小信息,才能够解决该问题。


专家解答

这一问题极其少见,在MOS Note 601798.1 记录如下参考信息:

Oracle reports the ORA-00600: [kcfrbd_3] on a particular query.
The same exception is encountered if you try to select DBA_EXTENTS using a FILE#/BLOCK#.

以下是这个600错误的几个主要参数说明:

ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kcfrbd_3], [13], [64011], [1], [64000], [64000], [], []
Arg [a] File number
Arg [b] Block number
Arg [c] Nro of blocks
Arg [d] Logical File Size
Arg [e] File Size

第一个参数是文件号,如下 13 为文件号:

SELECT segment_name , segment_type , owner , tablespace_name
FROM sys.dba_extents
WHERE file_id = 13
AND 64011 BETWEEN block_id and block_id + blocks -1;
ERROR at line 2:
ORA-00600: internal error code, arguments: [kcfrbd_3], [13], [66499], [1], [64000], [64000], [], []
Cause
There is a corruption on the extent allocation table to tablespace that 
the file# 13 belongs to.
For example, in this case,
Datafile # 13 is +DATA/ORCL/datafile/mgmt_tablespace.340.655388135
     (FOB) flags=512 fib=0x1629c8f68 incno=0 pending i/o cnt=0
    fname=+DATA/ORCL/datafile/mgmt_tablespace.340.655388135
    fno=13 lblksz=8192 fsiz=64000
We are trying to access the block 64011 that is beyond the number of blocks 6400.

最简单的情况,可以通过 resize 文件来消除。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论