oracle中视图V$PGA_TARGET_ADVICE的用法
2015-09-16 10:57
621 查看
看一下这个视图能给我们带来什么样的信息(视图中每个列都很有帮助):
sys@ora10g> SELECT pga_target_for_estimate / 1024 / 1024 "PGA(MB)",
2 pga_target_factor,
3 estd_pga_cache_hit_percentage,
4 estd_overalloc_count
5 FROM v$pga_target_advice;
PGA(MB) PGA_TARGET_FACTOR ESTD_PGA_CACHE_HIT_PERCENTAGE ESTD_OVERALLOC_COUNT
---------- ----------------- ----------------------------- --------------------
10 .5 34 13
15 .75 34 13
20 1 100 13
24 1.2 100 13
28 1.4 100 13
32 1.6 100 3
36 1.8 100 0
40 2 100 0
60 3 100 0
80 4 100 0
120 6 100 0
160 8 100 0
12 rows selected.
通过上面的数据可以得到如下的结论:
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;
System altered.
6.调整后,再次查询一下v$pga_target_advice视图得到如下的建议信息,可以看到基本上已经满足现在的系统需求。
sec@ora10g> SELECT pga_target_for_estimate / 1024 / 1024 "PGA(MB)",
2 pga_target_factor,
3 estd_pga_cache_hit_percentage,
4 estd_overalloc_count
5 FROM v$pga_target_advice;
PGA(MB) PGA_TARGET_FACTOR ESTD_PGA_CACHE_HIT_PERCENTAGE ESTD_OVERALLOC_COUNT
---------- ----------------- ----------------------------- --------------------
18 .5 94 2
27 .75 94 2
36 1 100 0
43.1992188 1.2 100 0
50.3994141 1.4 100 0
57.5996094 1.6 100 0
64.7998047 1.8 100 0
72 2 100 0
108 3 100 0
144 4 100 0
216 6 100 0
288 8 100 0
12 rows selected.
恭喜你,到这里,您一定已经会“看”这个v$pga_target_advice视图了。
这是一个动态的过程,可以定期的查看这个视图得到更加有效的PGA大小的设置建议。
sys@ora10g> SELECT pga_target_for_estimate / 1024 / 1024 "PGA(MB)",
2 pga_target_factor,
3 estd_pga_cache_hit_percentage,
4 estd_overalloc_count
5 FROM v$pga_target_advice;
PGA(MB) PGA_TARGET_FACTOR ESTD_PGA_CACHE_HIT_PERCENTAGE ESTD_OVERALLOC_COUNT
---------- ----------------- ----------------------------- --------------------
10 .5 34 13
15 .75 34 13
20 1 100 13
24 1.2 100 13
28 1.4 100 13
32 1.6 100 3
36 1.8 100 0
40 2 100 0
60 3 100 0
80 4 100 0
120 6 100 0
160 8 100 0
12 rows selected.
通过上面的数据可以得到如下的结论:
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;
System altered.
6.调整后,再次查询一下v$pga_target_advice视图得到如下的建议信息,可以看到基本上已经满足现在的系统需求。
sec@ora10g> SELECT pga_target_for_estimate / 1024 / 1024 "PGA(MB)",
2 pga_target_factor,
3 estd_pga_cache_hit_percentage,
4 estd_overalloc_count
5 FROM v$pga_target_advice;
PGA(MB) PGA_TARGET_FACTOR ESTD_PGA_CACHE_HIT_PERCENTAGE ESTD_OVERALLOC_COUNT
---------- ----------------- ----------------------------- --------------------
18 .5 94 2
27 .75 94 2
36 1 100 0
43.1992188 1.2 100 0
50.3994141 1.4 100 0
57.5996094 1.6 100 0
64.7998047 1.8 100 0
72 2 100 0
108 3 100 0
144 4 100 0
216 6 100 0
288 8 100 0
12 rows selected.
恭喜你,到这里,您一定已经会“看”这个v$pga_target_advice视图了。
这是一个动态的过程,可以定期的查看这个视图得到更加有效的PGA大小的设置建议。
相关文章推荐
- Maven 3 + Hibernate 3.6 + Oracle 11g Example (Annotation)
- oracle中视图v$sql的用途
- oracle安全管理
- How to add Oracle JDBC driver in your Maven local repository
- 不安装oracle客户端,用plsql连接oracle
- oracle笔记
- oracle用户密码过期的处理方法
- oracle触发器
- 在Windows下安装Oracle 11g的XE(Express版)
- Maven 3 + Hibernate 3.6 + Oracle 11g Example (XML Mapping)
- Oracle监听启动失败问题
- oracle_PLSQL 快捷键使用技巧
- VS2010+ASP.NET MVC4+EF4+JqueryEasyUI+Oracle项目开发(转载)
- 使用Goldengate 实现Oracle for Oracle 单向数据同步
- 关于win7系统的Oracle安装时的[INS-30131]问题的解决方案
- oracle中distinct的用法详解
- MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
- Oracle中PL/SQL的执行部分和各种流程控制
- Oracle SQL语句记录
- 个人面试题(Oracle数据库开发)(二)