ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle温故知新--buffer cache(四)增加buffer注意事项

oracle温故知新--buffer cache(四)增加buffer注意事项

原创 Linux操作系统 作者:bbs159 时间:2011-06-16 19:01:24 0 删除 编辑
一、下列情形可以考虑增加buffer cache

        一些等待事件已经被优化

        不良的SQL语句已经被优化

        操作系统级别无不良的内存页面置换

        上次增加的buffer cache有效

        基于上面的情形,且命中率很低,此时可以增加buffer cache

二、增加buffer cache 的步骤

        首先将db_cache_advice置于ON 状态

        检查动态性能视图v$db_cache_advice(需要考虑增加后不影响操作系统级别过多的内存页面置换)

        动态增加db_cache_size的值(生产数据库不建议关闭系统而使用动态调整alter system set db_cache_size=nM;)

   

        查看当前buffer cache的大小

            SELECT NAME,current_size,buffers FROM v$buffer_pool;

 

            NAME                           CURRENT_SIZE    BUFFERS

            ------------------------------ ------------ ----------

            DEFAULT                                3456     428760     

           

.减少buffer cache 的情形

        在命中率很高的情形下,查询视图v$db_cache_advice,来权衡适度降低buffer cache size是否会使得系统I/O显剧增加,如不是,且

        降低buffer cache size不会影响性能的情况下,则可以适度降低buffer cache size的大小。

        使用alter system set db_cache_size来调整

 

四.使用advisor来调整buffer cache

        buffer cache advisor 可以启用或禁用通过收集统计信息来预估buffer cache的大小,然后根据预估的大小以及工作负荷来调整buffer

        cache的大小。buffer cache advisor功能通过设置参数db_cache_advice 开启用或禁用,该参数仅能支持系统级别的修改。

        其参数值为:OFF,ON,READY

            OFF:禁用buffer cache advisor特性,且不为advisor分配内存

            READY:不收集数据,但是收集数据的内存已经预先分配好了.通过把参数值从off设置为ready,然后再设置为on,以避免出现错误。

                ALTER SYSTEM SET db_cache_advice = ON | READY | OFF ;

   

        该参数设置的前提条件为STATISTICS_LEVEL参数必须要先设置为TYPICAL或者ALL

       

        通过设置启用buffer cache advisor 功能后,可以查看视图v$db_cache_advice来获得不同负荷下的advisor

        以下是该视图的几个重要列

            SIZE_FOR_ESTIMATE

            BUFFERS_FOR_ESTIMATE

            ESTD_PHYSICAL_READS

       

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

请登录后发表评论 登录
全部评论

注册时间:2011-05-11

  • 博文量
    26
  • 访问量
    40753