暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Statspack之十-调整STATSPACK的收集门限

原创 eygle 2004-06-24
500

Statspack有两种类型的收集选项:



级别(level):控制收集数据的类型


门限(threshold):设置收集的数据的阈值。


 


1.级别(level)



Statspack共有三种快照级别,默认值是5



a.level 0: 一般性能统计。包括等待事件、系统事件、系统统计、回滚段统计、行缓存、SGA、会话、锁、缓冲池统计等等。


b.level 5: 增加SQL语句。除了包括level0的所有内容,还包括SQL语句的收集,收集结果记录在stats$sql_summary中。


c.level 10: 增加子锁存统计。包括level5的所有内容。并且还会将附加的子锁存存入stats$lathc_children中。在使用这个级别时需要慎重,建议在Oracle support的指导下进行。


可以通过statspack包修改缺省的级别设置






 


SQL>execute statspack.snap(i_snap_level=>0,i_modify_parameter=>’true’);


 


 


通过这样的设置,以后的收集级别都将是0级。


如果你只是想本次改变收集级别,可以忽略i_modify_parameter参数。


 






 


SQL>execute statspack.snap(i_snap_level=>10);


 


 


2.快照门限


 


快照门限只应用于stats$sql_summary表中获取的SQL语句。


因为每一个快照都会收集很多数据,每一行都代表获取快照时数据库中的一个SQL语句,所以stats$sql_summary很快就会成为Statspack中最大的表。


 


门限存储在stats$statspack_parameter表中。让我们了结一下各种门限:



a. executions_th这是SQL语句执行的数量(默认值是100)


b. disk_reads_tn这是SQL语句执行的磁盘读入数量(默认值是1000)


c. parse_calls_th这是SQL语句执行的解析调用的数量(默认值是1000)


d. buffer_gets_th这是SQL语句执行的缓冲区获取的数量(默认值是10000)


 


任何一个门限值超过以上参数就会产生一条记录。


通过调用statspack.modify_statspack_parameter函数我们可以改变门限的默认值。


例如:






 


SQL>execute statspack.modify_statspack_parameter(i_buffer_gets_th=>100000,i_disk_reads_th=>100000;


 


 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论