Instance Efficiency Percentages (Target 100%) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Buffer Nowait %: 100.00 Redo NoWait %: 99.98 Buffer Hit %: 65.82 In-memory Sort %: 99.65 Library Hit %: 91.32 Soft Parse %: 88.18 Execute to Parse %: 9.28 Latch Hit %: 99.99 Parse CPU to Parse Elapsd %: 94.61 % Non-Parse CPU: 99.90
Buffer Hit %: 数据缓冲区命中率,通常应该大于90%;
Library Hit %: libaray cache的命中率,通常应该大于98%;
In-memory Sort %: 排序在内存的比例,如果这个比例过小,可以考虑增大sort_area_size,使得排序在内存中进行而不是在temp表空间中进行;
Soft Parse %: 软解析的百分比,这个百分比也应该很大才好,因为我们要尽量减少hard parse。 soft parse 百分比=soft/(soft+hard);
Execute to Parse %: 这个数字也应该是越大越好,接近100%最好。有些报告中这个值是负的,看上去很奇怪。事实上这表示一个问题,sql如果被age out的话就可能出现这种情况,也就是sql老化,或执行alter system flush shared_pool等。
Shared Pool Statistics Begin End ------ ------ Memory Usage %: 90.63 87.19 % SQL with executions>1: 71.53 75.39 % Memory for SQL w/exec>1: 59.45 65.17
% SQL with executions>1: 这个表示SQL被执行次数多于一次的比率,也应该大为好,小则表示很多sql只被执行了一次,说明没有使用bind var;
2.2.3 等待事件分析 接下来,statspack报告中描述的是等待事件(Wait Events),这是Oracle中比较复杂难懂的概念。 Oracle 的等待事件是衡量Oracle 运行状况的重要依据及指标。 等待事件的概念是在Oracle7.0.1.2 中引入的,大致有100 个等待事件。在Oracle 8.0 中这个数目增加到了大约150 个,在Oracle8i 中大约有200 个事件,在Oracle9i 中大约有360 个等待事件。 主要有两种类别的等待事件,即空闲(idle)等待事件和非空闲(non-idle)等待事件。 空闲事件指Oracle 正等待某种工作,在诊断和优化数据库的时候,我们不用过多注意这部分事件。 常见的空闲事件有: ? dispatcher timer ? lock element cleanup ? Null event ? parallel query dequeue wait ? parallel query idle wait - Slaves ? pipe get ? PL/SQL lock timer
上一篇:DataGrid和存储过程结合的分页,只读取当前页数据
下一篇:用户登录存储过程
|