关于PGA的动态性能视图


V$PGASTAT动态性能视图中的常用列。
aggregate PGA target parameter
pga_aggregate_target初始化参数的当前值。如果该参数没有设置值是0,自动PGA管理将不会启动。默认值是10M与SGA的20%中较大的值。
aggregate PGA auto target
在自动PGA管理中,可用于oracle数据库SQL工作区的PGA内存大小。该参数的值,动态的衍生于pga_aggregate_target参数。如果该参数小很多,说明大量的PGA内存分配给了系统中的其他组件,这样分配给工作区的内存量就小了。DBA应该确保有足够的内存分配给SQL工作区。
cache hit percentage
反应自oracle实例启动以来PGA内存组件的性能的度量值。100%意味着自实例启动以来所有的各种操作都是在PGA的SQL工作区进行的。
max processes count
自实例启动以来的最大进程数。
process count
当前活动的进程数,该参数每3秒更新一次。
maximum PGA allocated
自实例启动以来分配给PGA的最大内大小。
maximum PGA used for auto workareas
在PGA内存自动化管理模式下,自实例启动以来分配给SQL工作区的最大内存大小。
maximum PGA used for manual workareas
在PGA内存手动管理模式下,自实例启动以来分配给SQL工作区的最大内存大小。
over allocation count
超过分配的次数,这是自实例启动以来积累的统计值。如果pga_aggregate_target的值设置的太小,那么oracle数据库将不会信任该值,将会额外的分配PGA需要的内存。如果该值出现,应该根据V$pga_target_advice调整ga_aggregate_target的值。
PGA memory freed back to OS
所有的进程可以释放归还给操作系统的内存大小总和。
total PGA allocated
当前PGA的内存大小。oracle会尝试让该值低于pga_aggregate_target初始化参数
指定的值,但是当pga_aggregate_target参数指定的值太小的时候,或者SQL工作区快速增长的时候,可以小幅短期的超过pga_aggregate_target参数指定的值。
total PGA inuse
指示多少PGA内存被当前的SQL工作区消耗,该值可以用来确定多少内存是被别的PGA组件消耗的(PL/SQL or Java memory)。
bytes processed
该参数是自实例启动以来积累的处理内存密集SQL操作占用的内存大小。
extra bytes read/written
当SQL工作区设置的不是最佳时,会出现额外数据传输。该值是自实例启动以来额外的数据传输的大小。
global memory bound
在PGA内存自动管理模式下(即SQL工作执行区在auto模式下),分配给SQL工作区的上限内存大小。oracle会更加SQL工作区的负载情况动态的调整该参数值。当活跃的SQL工作区增加的时候该值,通常会减小。如果该值小于1MB,应该增大pga_aggregate_target的值。

Oracle给出了一系列的自动优化的建议,PGA分配多大能给系统带来最大的性能?V$PGA_TARGET_ADVICE视图给出了很好的“预测”!


SELECT pga_target_for_estimate / 1024 / 1024 "PGA(MB)", pga_target_factor,estd_pga_cache_hit_percentage,estd_overalloc_count FROM v$pga_target_advice;


1.第一列表示不同的PGA的具体值

2.第二列PGA_TARGET_FACTOR为“1”表示当前的pga_aggregate_target设置大小(其他数值都是以这个数据为基础的倍数),我这里是20M,通过pga_aggregate_target参数可以确认一下
sys@ora10g> show parameter pga_aggregate_target;

NAME TYPE VALUE
----------------------- -------------------- -----------
pga_aggregate_target big integer 20M

3.第三列表示PGA的估算得到的Cache命中率的百分比
目前系统如果PGA为20M的时候,就可以达到100%的命中率

4.第四列如果为“0”表示可以消除PGA的过载
从上面的数据中可以得到,当PGA为36M的时候,可以消除PGA的过载。

5.综合以上的结论,我们最终可以将PGA的大小设置为36M。
sys@ora10g> alter system set pga_aggregate_target=36m;

优质内容筛选与推荐>>
1、华为总裁任正非谈企业管理:正确的方向来自于妥协
2、内部排序->插入排序->希尔排序
3、python登录豆瓣,发帖
4、layui 提交验证以及field作用
5、开博第二篇:记一个利用JavaScript,编写PS脚本,开发图片量产工具


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号