第三十二课第九章Storage Structure & Relationships

第九章Storage Structure & Relationships

Oracle9i之后一个数据库可以有一个标准的block size和最多个四个非标准block size

block size大小是2的次方倍,且大小在2KB到32KB之间,即2KB、4KB、8KB、16KB、32KB

db_block_size参数是在创建数据库时设置的,后期无法更改

system表空间和temporary表空间的block大小一定是db_block_size

db_cache_size参数确定了默认buffer cache的block大小

最小size是一个granule(4M或16M),一个granule是SGA分配内存的最小单位

默认值48M

多个block size遵循规则

1、一个表空间中所有对象block size大小必须一致

2、所有临时表空间,包括永久的默认临时表空间,必须是标准的block size

3、索引表和LOB段的block size大小可以和基表的block size不同

block结构

header、free space、data

header和data之间是free space

block相关参数

①initrans

确定了索引或数据块中创建的transaction slots(事务槽)的初始值

该参数确定对block进行修改的并发数,对于数据的来说默认值1,索引段默认值2。如果initrans设置成3,意味着可以同时有3个事务同时对一个block进行修改。可以根据需要,在该block的空闲空间中再分配事务槽来增加更多的并发事务。

事务槽用来记录事务正在修改block的相关信息,即使事务对多行或多个索引目录进行修改也只会使用一个事务槽

②maxtrans

确定了索引或数据块中创建的transaction slots(事务槽)的最大值

默认值255,限定一个数据块或索引块可以同时被多少个事务同时修改。通过限制事务槽的空间使用,确保block中有足够的空间存储数据。

③pctfree

默认值10%,该参数是设置block中预留空间来满足block中已存在的数据后期更新所需

④pctused

当一个block的空间使用率小于pctused设置的值,Oracle server会将这个block放到free list中。每个段的free list是所有有足够空间来存储数据的block的列表,默认每个段只有一个free list。通过设置freelists参数来指定pctused。默认pctused为40%。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值