一、Extent alloc & dealloc(盘区分配与释放)
盘区是段下面的一个存储单位,一个盘区在物理上是一段连续的数据块。
一个数据文件有一个文件头,点用了若干个数据块,这这个文件头里记录着盘区的分配与释放的信息。在这个文件中有些盘区是被使用的,有些盘区是空闲的。
什么时候创建盘区:
创建
扩展
改变(改大)
什么时候释放盘区:
删除
改变(改小)
二、Database Block(数据库块)
最小单位的输入/输出
数据块由操作系统中的一个或多个块组成
数据块是表空间的基本单位
DB_BLOCK_SIZE 文件来表示缺省块的大小
查看oracle 块的大小:
[ora10@localhost dbs]$ strings spfileora10.ora | grep -i db_block
*.db_block_size=8192 (8KB)
在早期的数据库中,oracle只支持一种数据块的大小。从9i版本支持了改变大小的设置。但也不是任用户随便改动的,
选择oracle培训规定范围在2KB到32KB之间,必须是倍数增加的,也就是2KB\4KB\8KB\16KB\32KB 五种大小。
需要注意的是,块大小的设置是在数据库创建时候设置的,一旦设置好是不可更改的。类似于我们磁盘的存储格式,FAT16、FAT32、NTFS.... ,要想改变存储格式只能数数据全部格式化掉。
Hearder : 块头记录一些控制信息,帮助oracle定位这个块,块与块之间的串联信息。
Free space :处于重现状态的这空间。
Data :已经写入数据的空间。数据存放数据的方式是自底往上的,就像现实中的一个箱子。
阅读(2019) | 评论(0) | 转发(0) |