Oracle内存参数说明笔记

本文介绍了Oracle数据库中PGA_AGGREGATE_TARGET参数的作用及其在不同版本和连接模式下的有效性,并提供了如何通过v$sql_workarea_histogram和v$pga_target_advice视图来评估PGA使用情况的方法。

 1、pga_aggregate_target

从Oracle9i开始,Oracle引入了自动PGA管理的新特型,PGA_AGGREGATE_TARGET参数用于控制PGA的总体期望目标,但是在Oracle9i中,PGA_AGGREGATE_TARGET参数仅对专用服务器模式下(Dedicated Server)的专属连接有效,对共享服务器(Shared Server)连接无效;从Oracle10g开始PGA_AGGREGATE_TARGET对专用服务器连接和共享服务器连接同时生效。

 

if ( 数据库版本 >= 10gR1 )
then
   if (workarea_size_policy=auto)
   then
       pga_aggregate_target 有效
   else
       sort_area_size 有效
   end if
else -- 数据库版本 < 10gr1
   if ( shared server 连接方式 )
   then
       sort_area_size 有效
   else -- dedicated server连接方式
       if (workarea_size_policy=auto)
       then
           pga_aggregate_target 有效
       else
           sort_area_size有效
       end if
    end if
end if

 

PGA的效率 v$sql_workarea_histogram

 

select
 case
  when low_optimal_size < 1024*1024
  then to_char(low_optimal_size/1024,'999999') ||
           'kb <= pga < ' ||
           (high_optimal_size+1)/1024|| 'kb'
   else to_char(low_optimal_size/1024/1024,'999999') ||
           'mb <= pga < ' ||
           (high_optimal_size+1)/1024/1024|| 'mb'
   end ||': '||
   optimal_executions||'--'||
   onepass_executions||'--'||
   multipasses_executions as mystat
from
 v$sql_workarea_histogram
where total_executions <> 0
order by low_optimal_size

 

按PGA 的workarea去分析. 2mb <= pga < 4mb: 2571--756--0 表示workarea在 2m-4m 之间的在内存里运行的有2571次,756次需要用到一次disk,0次多次用到disk。

PGA的建议 v$pga_target_advice

 

select
 trunc(pga_target_for_estimate/1024/1024)||'mb'
                          pga_target_for_estimate,
 to_char(pga_target_factor * 100,'999.9') ||'%'
                          pga_target_factor,
 trunc(bytes_processed/1024/1024) bytes_processed,
 trunc(estd_extra_bytes_rw/1024/1024) estd_extra_bytes_rw,
 to_char(estd_pga_cache_hit_percentage,'999') || '%'
                           estd_pga_cache_hit_percentage,
 estd_overalloc_count
from
 v$pga_target_advice

 

当前的pga_aggregate_target 是209715200,即200m,从结果上看命中率98%,说明目前的设置尚可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值