关于 show sga 结果的描述

Total System Global Area AAAAA bytes
Fixed Size BBBBB bytes
Variable Size CCCCC bytes
Database Buffers DDDDD bytes
Redo Buffers EEEEE bytes


fixes size : oracle 的不同平台和不同版本下可能不一样,但对于确定环境是一个固定的值,里面存储了 SGA 各部分 组件 的信息,可以看作 引导 建立 SGA 的区域

Variable Size : 包括 shared pool ,java pool ,large pool, 管理DB_BLOCK_BUFFERS 的内存,管理控制文件信息的内存,等等其他管理和控制 oracle 内部结构的内存

redo buffer 分
1: 设置参数
 
  
None.gif SQL > show parameters log_buffer None.gifNone.gifNAME TYPE VALUE None.gif -- ---------------------------------- ------- ------------------------------ None.gif log_buffer integer 524288
2:日志内存大小
 
  
None.gif SQL > select * from v$sgastat where name like ' %log% ' ; None.gifNone.gifPOOL NAME BYTES None.gif -- --------- -------------------------- ---------- None.gif log_buffer 656384
3 : 为了保护日志内存,而增加了辅助的内存,也就是保护页
 
  
None.gif SQL > show sga None.gifNone.gifTotal System Global Area 496049552 bytes None.gifFixed Size 454032 bytes None.gifVariable Size 109051904 bytes None.gif Database Buffers 385875968 bytes None.gifRedo Buffers 667648 bytes None.gifSQL > None.gif
对于数据库来说,在不同 的平台下

log_buffer 是离散的 一组值,假设是集合 R,并且不是按照 os blockck 或者 db block 为步长增加的,(比如可能是
65k,128k,512k ,641k....这样的值) 当设置参数为某个值的时候,数据库选择的实际大小是 大于等于 该值 的 min(R) ,根据这组值,比如你设置了 log_buffer = 600k ,则实际选择的是641 k

然后,在实际分配内存的时候,为了 给 log buffer 做一些保护,还另外分配了一小部分空间,通常是 11 k 大小。

则有641+11 = 652 k

这才是 最后真正的 内存大小 ,也就是 show SGA 时候显示大小
[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/40472/viewspace-850258/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/40472/viewspace-850258/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值