Statspack报告数据结果解释
作者: 佚名 来源: Linux 宝库 点击: 日期: 2006-12-05
--> 一、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) 二、输出结果解释 1、报表头信息 数据库实例相关信息,包括数据库名称、ID、版本号及主机等信息 Quote: STATSPACK report for DB Name DB Id Instance Inst Num Release Cluster Host ------------ ----------- ------------ -------- ----------- ------- ------------ PORMALS 3874352951 pormals 1 9.2.0.4.0 NO NJLT-SERVER1 Snap Id Snap Time Sessions Curs/Sess Comment ------- ------------------ -------- --------- ------------------- Begin Snap: 36 18-7月 -04 20:41:02 29 19.2 End Snap: 37 19-7月 -04 08:18:27 24 15.7 Elapsed: 697.42 (mins) Cache Sizes (end) ~~~~~~~~~~~~~~~~~ Buffer Cache: 240M Std Block Size: 8K Shared Pool Size: 96M Log Buffer: 512K 2、负载间档 该部分提供每秒和每个事物的统计信息,是监控系统吞吐量和负载变化的重要部分 Quote: Load Profile ~~~~~~~~~~~~ Per Second(秒) Per Transaction事物 --------------- --------------- Redo size: 148.46 3,702.15 Logical reads: 1,267.94 31,619.12 Block changes: 1.01 25.31 Physical reads: 4.04 100.66 Physical writes: 4.04 100.71 User calls: 13.95 347.77 Parses: 4.98 124.15 Hard parses: 0.02 0.54 Sorts: 1.33 33.25 Logons: 0.00 0.02 Executes: 2.46 61.37 Transactions: 0.04 % Blocks changed per Read: 0.08 Recursive Call %: 30.38 Rollback per transaction %: 0.42 Rows per Sort: 698.23 说明: Redo size:每秒产生的日志大小(单位字节),可标志数据库任务的繁重与否 Logical reads:平决每秒产生的逻辑读,单位是block block changes:每秒block变化数量,数据库事物带来改变的块数量 Physical reads:平均每秒数据库从磁盘读取的block数 Physical writes:平均每秒数据库写磁盘的block数 User calls:每秒用户call次数 Parses:每秒解析次数,近似反应每秒语句的执行次数 软解析每秒超过300次意味着你的"应用程序"效 率不高,没有使用soft soft parse,调整session_cursor_cache Hard parses:每秒产生的硬解析次数 Sorts:每秒产生的排序次数 Executes:每秒执行次数 Transactions:每秒产生的事务数,反映数据库任务繁重与否 3、实例命中率 该部分可以提前找出ORACLE潜在将要发生的性能问题,很重要 Quote: Instance Efficiency Percentages (Target 100%) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Buffer Nowait %: 100.00 Redo NoWait %: 100.00 Buffer Hit %: 99.96 In-memory Sort %: 99.14 Library Hit %: 99.53 Soft Parse %: 99.57 Execute to Parse %: -102.31 Latch Hit %: 100.00 Parse CPU to Parse Elapsd %: 81.47 % Non-Parse CPU: 96.46 说明: Buffer Nowait %:在缓冲区中获取Buffer的未等待比率 Redo NoWait %:在Redo缓冲区获取Buffer的未等待比率 Buffer Hit %:数据块在数据缓冲区中得命中率,通常应在90%以上,否则,需要调整 In-memory Sort %:在内存中的排序率 Library Hit %:主要代表sql在共享区的命中率,通常在95%以上,否,需要要考虑加 大共享池,绑定变量,修改cursor_sharing等参数。 Soft Parse %:近似看作sql在共享区的命中率,小于<95%,需要考虑到绑定,如果低于80%, 那么就可能sql基本没有被重用 Execute to Parse %:sql语句解析后被重复执行的次数,如果过低,可以考虑设置 session_cached_cursors参数 Parse CPU to Parse Elapsd %:解析实际运行事件/(解析实际运行时间+解析中等待资源时间) 越高越好 % Non-Parse CPU:查询实际运行时间/(查询实际运行时间+sql解析时间),太低表示解析消耗时间过多。 Quote: Shared Pool Statistics Begin End ------ ------ Memory Usage %: 33.79 57.02 % SQL with executions>1: 62.62 73.24 % Memory for SQL w/exec>1: 64.55 78.72 Shared Pool相关统计数据 Memory Usage %:共享池内存使用率,应该稳定在75%-90%间,太小浪费内存,太大则内存不足。 % SQL with executions>1:执行次数大于1的sql比率,若太小可能是没有使用bind variables。 % Memory for SQL w/exec>1:也即是memory for sql with execution > 1:执行次数大于1的sql 消耗内存/所有sql消耗的内存 4、首要等待事件 Quote: Top 5 Timed Events ~~~~~~~~~~~~~~~~~~ % Total Event Waits Time (s) Ela Time -------------------------------------------- ------------ ----------- -------- CPU time 581 63.58 SQL*Net more data to client 223,918 257 28.14 control file parallel write 13,595 24 2.66 direct path read 4,411 17 1.86 db file sequential read 2,851 12 1.28 常见等待事件说明: oracle等待事件是衡量oracle运行状况的重要依据及指示,主要有空闲等待事件和非空闲等待事件 ;空闲等待事件是oracle正等待某种工作,在诊断和优化数据库时候,不用过多注意这部分事件, 非空闲等待事件专门针对oracle的活动,指数据库任务或应用程序运行过程中发生的等待,这些等待事件是我们在调整数据库应该关注的。
【文章评论 】
【收藏本文 】
【推荐好友 】
【打印本文 】
【论坛讨论 】
相关文章:
文章评论: (条)
责任编辑:一分 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。