dbblock gets 该统计值为数据请求的总数;
consistent gets 该统计值为通过对内存缓冲区存取即能满足的请求数;
physical reads 该统计值为磁盘文件存取的总数。
下面语句可以监控在一段时间内V$SYSSTAT表中的统计:

用以下公式计算缓冲区高速缓存的命中率 :命中率=1-( physical reads /(db block gets consistent gets))。根据以上查询出的统计数据,计算出缓冲区高速缓存的存取命中率为99.198%。

该例中,命中率很高,说明缓冲区高速缓存够用,性能良好。假如高速缓存大到足以容纳最经常存取的数据,在保持高命中率的前提下,可以通过适当减少初始化参数db_block_buffers的值来减少高速缓存的大小,从而可将省出来的内存用于其他Oracle内存结构。假如命中率低于70%的话,性能就会造成下降,就应该立即通过增加初始化参数db_block_buffers的值(它的最大值为65535),来扩大缓冲区高速缓存的大小。
重新分配内存
经过上述对Oracle内存结构分配的调整,可以再次对库高速缓存、数据字典高速缓存和缓冲区高速缓存的性能作出评估。假如有可能减少某种结构的内存消耗,就可以考虑给其他结构多分配一些内存,以得到增加可用内存的好处。但要注重,经过调整后的Oracle内存结构,假如使SGA过大而不能全部填入主存,就可能会使操作系统引起过度调页或分配,从而降低性能。
在重新分配内存的过程中,假如发现要取得Oacle最佳内存结构十分困难,就需要考虑花费资金,通过在计算机中增加更多的内存来进一步改进性能。
评论加载中…
![]() |