Oracle statspack祥解
调整STATSPACK 的收集门限,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;
Statspack分析报告详解:
statspack 输出结果中必须查看的十项内容
1、负载间档(Load profile)
2、实例效率点击率(Instance efficiency hit ratios)
3、首要的5个等待事件(Top 5 wait events)
4、等待事件(Wait events)
5、闩锁等待
6、首要的SQL(Top sql)
7、实例活动(Instance activity)
8、文件I/O(File I/O)
9、内存分配(Memory allocation)
10、缓冲区等待(Buffer waits相关阅读:
原创]保存的js无法执行的解决办法" target="_blank">[原创]保存的js无法执行的解决办法
ORACLE数据库查询表的基本信息
ASP调用oracle存储过程
Extjs列表详细信息窗口新建后自动加载解决方法
VB倒计时器和JS当前时间
windows 2003中SQL Server 2000分布式事务错误解决方法
数据库设计技巧[转载]
关于JSP中文问题的解决方法
网页设计中色彩搭配的内涵
ASP.net 页面被关闭后,服务器端是否仍然执行中?
Linux下时间延迟以及延缓操作
基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
.NET中设置联合结构的方法和联合体的特性应用
Oracle 9i升级到Oracle 10g RAC