转载自http://blog.csdn.net/robinson1988/article/details/4729858

log buffer 是SGA中一块循环使用的内存区域,它一般很小,因为有4个条件能够触发log buffer 中的redo 写入到log file中,缺省的设置为512kb,或者128kb*cpu_count (cpu_count由ORACLE自动设置,一般不需要更改)的最大值。

在10g中ORACLE会自动调整它的值,他遵循这样一个原则,'Fixed SGA Size'+ 'Redo Buffers'是granule size 的整数倍(其实不能完全的说是整数倍,如果是一倍,那么他们的比值可能为0.999...如果是2倍,那么他们的比值可能是1.999......以此类推)。

一般的granule value 为4194304 ,也就是4m,而fixed size 一般为 1.2m ,这个值不确定,也不精确,根据不同的平台有所差异,而默认的log_buffer+fixed size 的大小为 granule size 的整数倍,所以默认的情况下你看见的log_buffer大小约为6.67m或者为2.7M。

所以如果我们手动的设置log_buffer的值,那么ORACLE会将它加上fixed size 然后除以granule ,得到一个值,然后四舍五入,看最接近哪个整数,然后就取最接近的那个值

以下为自己试验:

查看log_buffer大小:

SQL> show parameter log_buffer;

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
log_buffer integer 6172160

查看granule大小:

SQL> select * from v$sgainfo where name='Granule Size';

NAME				      BYTES RES
-------------------------------- ---------- ---
Granule Size 4194304 No

查看fixed sga大小:

SQL> select * from v$sgainfo where name='Fixed SGA Size';

NAME				      BYTES RES
-------------------------------- ---------- ---
Fixed SGA Size 2019384 No

查看redo buffer大小:

SQL> show sga

Total System Global Area  180355072 bytes
Fixed Size 2019384 bytes
Variable Size 88084424 bytes
Database Buffers 83886080 bytes
Redo Buffers 6365184 bytes

计算结果:

SQL> select (6365184 + 2019384)/4194304 from dual;

(6365184+2019384)/4194304
-------------------------
1.99903679

redo buffer大小的更多相关文章

  1. 在线修改redo日志大小

    注意点:1.redo要是能sesize的话就完美了2.drop时候如果active就得checkpoint才能drop3.物理删除旧redo文件redo大小影响切换,进而影响性能,至于什么样的业务设置 ...

  2. Oracle更改redo log大小 or 增加redo log组

    (1)redo log的大小可以影响 DBWR 和 checkpoint : (2)arger redo log files provide better performance. Undersize ...

  3. MySQL如何计算统计redo log大小

      在MySQL中如何计算.统计重做日志(redo log)的生成情况呢? 例如10分钟内,生成了多少M的redo log呢?30分钟内又生成了多少M的redo log......MySQL没有像Or ...

  4. linux 网卡buffer大小

    参考截取一部分:https://blog.csdn.net/ysu108/article/details/7764461 在linux下可以修改协议栈改变tcp缓冲相关参数: 修改系统套接字缓冲区 e ...

  5. Innodb之全局共享内存

    参考链接: https://blog.csdn.net/miyatang/article/details/54881547 https://blog.csdn.net/wyzxg/article/de ...

  6. mysql参数总结

    1.innodb_old_blocks_pct 确定modpoint位置,默认37,(3/8=37%)可以通过这个调整young与old比. innodb_old_blocks_time:当有大的查询 ...

  7. oracle查询buffer cache中undo大小

    1.Does undo buffer exists or changes will directly write to undo datafiles? Undo blocks are database ...

  8. Oracle Redo Log 机制 小结(转载)

    Oracle 的Redo 机制DB的一个重要机制,理解这个机制对DBA来说也是非常重要,之前的Blog里也林林散散的写了一些,前些日子看老白日记里也有说明,所以结合老白日记里的内容,对oracle 的 ...

  9. redo文件四

    v$session_wait 用来查询redo buffer的空间信息 select sid,event,seconds_in_wait,state from v$session_wait where ...

随机推荐

  1. Python图片与其矩阵数据互相转换

    程序 # coding=gbk from PIL import Image import numpy as np # import scipy import matplotlib.pyplot as ...

  2. java:异常处理

    异常:编译正常,但运行出错,会中断正常指令流 RuntimeException:运行时异常 分为:uncheck exception.和check exception(除了RuntimeExcepti ...

  3. jQuery插件开发(转)

    jQuery插件开发 - 其实很简单 [前言]jQuery已经被广泛使用,凭借其简洁的API,对DOM强大的操控性,易扩展性越来越受到web开发人员的喜爱,我在社区也发布了很多的jQuery插件,经常 ...

  4. Java类的加载、链接和初始化

    一.Java的类加载机制回顾与总结: 我们知道一个Java类要想运行,必须由jvm将其装载到内存中才能运行,装载的目的就是把Java字节代码转换成JVM中的java.lang.Class类的对象.这样 ...

  5. gdb 基本命令

    backtrace(或bt) 查看各级函数调用及参数 finish 连续运行到当前函数返回为止,然后停下来等待命令 frame(或f) 帧编号 选择栈帧 info(或i) locals 查看当前栈帧局 ...

  6. 分享一个免费SSL证书申请网站,给网站开启https协议 | 张戈博客

    这些天,由于公司的业务需求,接触到了ssl证书和https协议.博客前几篇文章也分享了在WEB服务器上安装SSL证书,为网站开启https协议的教程,感兴趣的童鞋可以前往查看相关文章: <Lin ...

  7. svn is already under version control问题解决

    svn ci 时出现 xx is already under version control,然后无法提交,出现这个问题的原因是你所提交的文件或目录是其他SVN的东西,即下面有.svn的目录,需要先把 ...

  8. struct TABLE_SHARE

    struct TABLE_SHARE { TABLE_SHARE() {} /* Remove gcc warning */ /** Category of this table. */ TABLE_ ...

  9. sql server 数据库 ' ' 附近有语法错误

    昨天做项目时候,遇到标题的问题,代码跟踪把sql 语句 复制出来在数据库执行不了, 然后重新写个一模一样的,然后在 赋值到代码中,还是同样的错误, 就是不知道哪里出现了错误,最后 把 sql 语句写成 ...

  10. UVa 10868 (物理) Bungee Jumping

    题意: 有个人在蹦极,给出悬崖的高度,绳子的长度,弹簧绳的胡克系数 以及 人的质量. 判断人是否能够着地,能的话是否能安全着地.所谓安全着地就是到达地面的速度不超过10m/s. 分析: 学过一点高中物 ...