Oracle 11G 区管理方式

来源:这里教程网 时间:2026-03-03 18:56:52 作者:

Oracle  11G 表空间数据文件区管理方式有两种分别是统一区大小表空间和系统管理区大小表空间。Oracle 11G 默认管理方式为系统管理区大小。如下是创建一个新表空间,并且创建一张表: 从上述查询结果可以看出,数据文件从6号问题的128号块开始分配,分配了8个块,每个块8K,即一个区分配64K,6号文件从0号块到127号块未分配给表,说明是用于内部管理使用,我们使用dump 命令查看一下:6号文件0号和1号块信息(数据文件头): 6号文件2号块-127号块信息(KTFB Bitmapped File Space Header): ...... 6号文件128号块信息(FIRST LEVEL BITMAP BLOCK): 从上述结果可以看出: 数据文件0-1号数据块记录数据文件信息,2-127号块是位图,用于管理数据块第二 当表插入数据时,数据库如何给表分配空间,随着数据量的增加,区分配大小从64K(8*8K)到 1M(128*8k),各区的大小从最初8个 64K的区,多个1M的区,详细自行测试(alter table test.test  allocate extent;),如下: 针对dump 文件内容解析材料如下:

长度

含义

type

1

Block 的类型,可以取值:

0x01 undo segment header
0x02 undo block
0x03 save undo header block
0x04 save undo data block
0x05 data segment header block(temp, index, data)
0x06 KTB managed data block(with ITL)
0x07 temp table data block(no ITL)
0x08 sort key
0x09 sort run
0x0a segment free list block
0x0b data file header
0x0c data segment header with FLG blcks
0x0e unlimited undo segment header
0x0f unlimited save undo segment header
0x10 unlimited data segment header
0x11 unlimited data segment header with FLG blocks
0x12 extent map block
0x17 bitmapped segment header
0x1d KTFB bitmapped file space header
0x1e KTFB bitmapped file space bitmap
0x20 first level bitmap block
0x21 second level bitmap block
0x22 third level bitmap block
0x23 pagetable segment header block
0x24 pagetable extent map block
0x25 system managed undo extent map block

frmt

1

格式,标识不同的 block 版本

spare1/2

2

保留

rdba

4

相对 block 地址,前 10 bit 为相对文件 id ,后 22 bit block 号,可见 1 tablespace 可以有 1023 datafile ,每个 datafile 可以有 4M block

scn

6

block 最近一次更新时的 scn

seq

1

如果更新本 block scn 相同,则 seq 1

flg

1

组合标志位:

0x01  block data 部分为空;
0x02 delayed logging change advance SCN/SEQ
0x04  校验 CHECKSUM
0x08  临时 block

chkval

2

flg CHECKSUM 标志为真时,写入前对 block 计算 CHECKSUM ,并填入本域,后继读出时会再次计算并检查,防止块损坏

spare3

2

保留

 KTFB Bitmapped File Space Bitmap部分关键信息

含义

beginblock

存放 data block 地址,前面的区域存放Data File   Header、KTFB Bitmapped File Space Header、KTFB Bitmapped File Space Bitmap

flag

0 permanent 文件, 1 临时文件

first

block 中第 1 个可用的 unit 位置

free

block free unit 数量

map

1 bit 代表 1 unit 0 表示 free 1 表示 used

 segment 3级bitmap管理机制

表1.2-6 L1 BMB部分关键信息

一级域

二级域

含义

parent dba

其归属的 L2 BMB 地址

unformatted

未格式化的 block 数量

total

MAP block 总数

first useful block

MAP 中第 1 个可用的 block

MAP(*n)

offset

extent 的地址,即 extent 中第一个 block 的地址

length

extent block 的数量

bits

标识 extent 中各个 block 的状态,每个 block 的状态占用 4 bit 位:

0000 unformatted ,尚未格式化;
0001 full ,已满;
0010 <25% ,空闲空间 <25%
0011 25-50% ,空闲空间 25-50%
0100 50-75% ,空闲空间 50-75%
0101 >75 ,空闲空间 >75%
0110 metadata ,元数据 block segment header block BMB 都是 metadata block

表1.2-7 L2 BMB部分关键信息

一级域

二级域

含义

parent dba

其归属的 L3 BMB 地址或 segment   header block 地址

number

MAP L1 BMB 的数量

nfree

MAP 中尚有空闲空间的 L1 BMB 数量

ffree

MAP 中已满的 L1 BMB 数量

MAP(*n)

dba

L1 BMB 的地址

free

5 :空闲;

0 FULL

部分材料来自:https://developer.aliyun.com/article/1137769

相关推荐