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

Oracle数据文件有哪些类型的block?

问题概述

Oracle数据库中不同的块类型由块的第一个字节指定,Oracle数据文件中有哪些类型的block,块类型的内部编码(type_kcbh)分别是多少?资料对type_kcbh块类型的对照表描述不完整,现以Oracle 11G为例,完善type_kcbh对照表,本文档整理的也不完整,欢迎大家指出,逐步完善。块头结构如下所示,其中type_kcbh表示 Block type. 结构/元素 解释 struct kcbh, 20 bytes @0 Block Header Structure ub1 type_kcbh @0 Block type ub1 frmt_kcbh @1 Block format a2=oracle 112 ub1 spare1_kcbh @2 not used ub1 spare2_kcbh @3 not used ub4 rdba_kcbh @4 RDBA-Relative Data Block Address ub4 bas_kcbh @8 SCN Base ub2 wrp_kcbh @12 SCN Wrap ub1 seq_kcbh @14 sequence number ub1 flg_kcbh @15 Flag: 0x01 New Block 0x02 Delayed Loging Change advanced SCN/seq 0x04 Check value saved-block XOR's to zero 0x08 Temporary block ub2 chkval_kcbh @16 Optional block checksum(if DB_BLOCK_CHECKSUM=TRUE) ub2 spare3_kcbh @18 not used

扫描数据文件

XDUL>scan_datafile_map input filename: /oradata/orcl/system01.dbf filename|result_flag|frmt_kcbh|spare1_kcbh|spare2_kcbh|type_kcbh|buf_8189|bas_kcbh_8|tailchk_8190|bas_kcbh_9|tailchk_8191|seq_kcbh|tailchk_8188|file_no|block_no|real_block_no|wrp_kcbh|bas_kcbh /oradata/orcl/system01.dbf|1|a2|0|0|b|b|0|0|0|0|1|1|1|1|1|0|0 /oradata/orcl/system01.dbf|1|a2|0|0|1d|1d|8|8|35|35|2|2|1|2|2|0|406792 ... /oradata/orcl/system01.dbf|1|a2|0|0|6|6|fa|fa|40|40|4|4|1|34614|34614|0|409850 ... /oradata/orcl/system01.dbf|1|a2|0|0|0|0|0|0|0|0|1|1|0|41600|41600|0|0

块类型结果

[oracle@enmodb ~]$ cat db_block_type.log |awk -F'|' '{print $6}'|sort -u type_kcbh=0x00|os块或未初始化的块 type_kcbh=0x02|type: 0x02=KTU UNDO BLOCK type_kcbh=0x06|type: 0x06=trans data type_kcbh=0x0b|Data file header type_kcbh=0x0e|type: 0x0e=KTU UNDO HEADER W/UNLIMITED EXTENTS type_kcbh=0x10|type: 0x10=DATA SEGMENT HEADER - UNLIMITED type_kcbh=0x17|type: 0x17=BITMAPPED DATA SEGMENT HEADER type_kcbh=0x19|type: 0x19=BITMAP INDEX BLOCK type_kcbh=0x1a|type: 0x1a=BITMAP BLOCK type_kcbh=0x1b|type: 0x1b=LOB BLOCK type_kcbh=0x1d|type: 0x1d=KTFB Bitmapped File Space Header type_kcbh=0x1e|type: 0x1e=KTFB Bitmapped File Space Bitmap type_kcbh=0x20|type: 0x20=FIRST LEVEL BITMAP BLOCK type_kcbh=0x21|type: 0x21=SECOND LEVEL BITMAP BLOCK type_kcbh=0x23|type: 0x23=PAGETABLE SEGMENT HEADER type_kcbh=0x26|type: 0x26=KTU SMU HEADER BLOCK type_kcbh=0x28|type: 0x28=PAGETABLE MANAGED LOB BLOCK

块类型验证

### 如果还有其它块类型,请使用以下方法dump块信息,将生成的*.trc文件发我,谢谢。 ### weixin: xidoublestar ### 使用dump datafile block验证块类型 oradebug setmypid alter system dump datafile 1 block 128; oradebug close_trace oradebug tracefile_name
最后修改时间:2022-12-30 17:59:44
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论