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: 设置参数
SQL
>
show parameters log_buffer ![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
NAME TYPE VALUE
--
---------------------------------- ------- ------------------------------
log_buffer
integer
524288
SQL
>
select
*
from
v$sgastat
where
name
like
'
%log%
'
; ![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
POOL NAME BYTES
--
--------- -------------------------- ----------
log_buffer
656384
SQL
>
show sga ![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
Total System Global Area
496049552
bytes
Fixed Size
454032
bytes
Variable Size
109051904
bytes
Database
Buffers
385875968
bytes
Redo Buffers
667648
bytes
SQL
>
log_buffer 是离散的 一组值,假设是集合 R,并且不是按照 os blockck 或者 db block 为步长增加的,(比如可能是
则有641+11 = 652 k
这才是 最后真正的 内存大小 ,也就是 show SGA 时候显示大小[@more@]
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](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
2:日志内存大小
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
3 : 为了保护日志内存,而增加了辅助的内存,也就是保护页
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
![None.gif](http://cms.it168.com/Images/OutliningIndicators/None.gif)
对于数据库来说,在不同 的平台下
log_buffer 是离散的 一组值,假设是集合 R,并且不是按照 os blockck 或者 db block 为步长增加的,(比如可能是
65k,128k,512k ,641k....这样的值) 当设置参数为某个值的时候,数据库选择的实际大小是 大于等于 该值 的 min(R) ,根据这组值,比如你设置了 log_buffer = 600k ,则实际选择的是641 k
然后,在实际分配内存的时候,为了 给 log buffer 做一些保护,还另外分配了一小部分空间,通常是 11 k 大小。
然后,在实际分配内存的时候,为了 给 log buffer 做一些保护,还另外分配了一小部分空间,通常是 11 k 大小。
则有641+11 = 652 k
这才是 最后真正的 内存大小 ,也就是 show SGA 时候显示大小
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/40472/viewspace-850258/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/40472/viewspace-850258/