Oracle数据库flashback buffer参数研究(4)_Oracle数据库_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

Oracle flashback buffer参数研究(4)

作者:黑客防线网安Oracle维护基地 来源:黑客防线网安Oracle维护基地 浏览次数:0

本篇关键词:Oracle数据库Oracle教程
黑客防线网安网讯:     nbsp;     0                    Specify Flashback log I/O error behavior  _flashback_hint_barrier_percent          20                   Flashback hint barrier percent  ...
     nbsp;     0                    Specify Flashback log I/O error behavior
  _flashback_hint_barrier_percent          20                   Flashback hint barrier percent
  _percent_flashback_buf_partial_full      50                   Percent of flashback buffer filled to be considere
  _flashback_write_size_qm                 4                    Desired flashback write size in quarter MB
  20 rows selected.
  调节隐含参数_flashback_generation_buffer_size可以看到flashback generation buff 并没有发生变化
  引用
  SQL> alter system set “_flashback_generation_buffer_size”=4200000 scope=spfile;
  System altered.
  SQL> startup force
  ORACLE instance started.
  Total System Global Area  536870912 bytes
  Fixed Size                  1262428 bytes
  Variable Size             146803876 bytes
  Database Buffers          318767104 bytes
  Redo Buffers               70037504 bytes
  Database mounted.
  Database opened.
  SQL> select name,bytes from V$sgastat
  2  where pool=’shared pool’
  3  and name like ‘%flash%’;
  NAME                                          BYTES
  —————————————- ———-
  flashback generation buff                   3981204
   难道_flashback_generation_buffer_size不起作用?再进一步研究我们知道Oracle内存分配是以granule为单位的,查看当前系统granule大小
  引用
  SQL> select * from v$sgainfo
  2  where name=’Granule Size’;
  NAME                                          BYTES RES
  —————————————- ———- —
  Granule Size                                4194304 No
  同时该参数是受隐含参数_ksmg_granule_size控制的
  引用
  SQL> set linesize 120
  SQL> col name for a40 trunc
  SQL> col value for a20
  SQL> col pdesc for a50 trunc
  SQL> SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.KSPPDESC PDESC
  2    FROM SYS.x$ksppi x, SYS.x$ksppcv y
  3  WHERE x.indx = y.indx AND x.ksppinm LIKE ‘%&par%’;
  Enter value for par: ksmg_granule_size
  old   3: WHERE x.indx = y.indx AND x.ksppinm LIKE ‘%&par%’
  new   3: WHERE x.indx = y.indx AND x.ksppinm LIKE ‘%ksmg_granule_size%’
  NAME                                     VALUE                PDESC
  —————————————- ——————– ————————————————–
  _ksmg_granule_size                       4194304              granule size in bytes
  修改_ksmg_granule_size大小到8M
  引用
  SQL> alter system  set “_ksmg_granule_size”=8388608 scope=spfile;
  System altered.
  SQL> startup force;
  ORACLE instance started.
  Total System Global Area  536870912 bytes
  Fixed Size                  1261080 bytes
  Variable Size             142606824 bytes
  Database Buffers          318767104 bytes
  Redo Buffers               74235904 bytes
  Database mounted.
  Database opened.
  可以看到granule已经变成8M。
  引用
  SQL> select * from v$sgainfo
  2  where name=’Granule Size’
  3  ;
  NAME                                          BYTES RES
  —————————————- ———- —
  Granule Size                                8388608 No
  查看flashback buffer大小,发现已经和_flashback_generation_buffer_size相匹配。
  引用
  SQL> select name,bytes from V$sgastat
  2  where pool=’shared pool’
  3  and name like ‘%flash%’;
  NAME                                          BYTES
  —————————————- ———-
  flashback generation buff                   4200448
  SQL> set linesize 120
  SQL> col name for a40 trunc
  SQL> col value for a20
  SQL> col pdesc for a50 trunc
  SQL> SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.KSPPDESC PDESC
  2    FROM SYS.x$ksppi x, SYS.x$ksppcv y
  3  WHERE x.indx = y.indx AND x.ksppinm LIKE ‘%&par%’;
  Enter value for par: _flashback_generation_buffer_size
  old   3: WHERE x.indx = y.indx AND x.ksppinm LIKE ‘%&par%’
  new   3: WHERE x.indx = y.indx AND x.ksppinm LIKE ‘%_flashback_generation_buffer_size%’
  NAME                                     VALUE                PDESC
  —————————————- ——————– ————————————————–
  _flashback_generation_buffer_size        4200448              flashback generation buffer size
  总结:Oracle flashback buffer大小设置不仅和隐含参数_flashback_generation_buffer_size有关而且和Granule 大小(其大小不仅和隐含参数有关而且Oracle内存大小有关)有关。
  1、Granule大于_flashback_generation_buffer_size时,_flashback_generation_buffer_size生效。
  2、对于大内存高并发生产库建议将log_buffer设置8m以上
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-13013-1.html
网站维护教程更新时间:2012-03-23 00:49:37  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer