如何检查Oracle命中率
这篇文章主要介绍如何检查Oracle命中率,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
成都创新互联公司服务项目包括威县网站建设、威县网站制作、威县网页制作以及威县网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,威县网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到威县省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
在数据库正常使用期间,可以通过以下SQL来测试数据库性能:
SQL>select (1-(sum(decode(name, 'physical reads',value,0))/(sum(decode(name, 'db block gets',value,0)) + sum(decode(name,'consistent gets',value,0))))) * 100 "HIT RATE "from v$sysstat;
HIT RATE
---------------------
99.8493296
SQL>select (1-(sum(getmisses)/sum(gets))) * 100 "HIT RATE" from v$rowcache;
HIT RATE
---------------------
98.1750126
SQL>select Sum(Pins)/(Sum(Pins) + Sum(Reloads)) * 100 "HIT RATE" from V$LibraryCache;
HIT RATE
---------------------
99.9905342
SQL> select a.value "Disk Sorts", b.value "Memory Sorts",round((100*b.value)/decode((a.value+b.value),0,1,(a.value+b.value)),2)"Memory Sorts%" from v$sysstat a, v$sysstat b wherea.name = 'sorts (disk)'and b.name = 'sorts (memory)';
Disk Sorts Memory Sorts Memory Sorts%
---------- ------------ ----------------
SQL> select decode(state,0, 'FREE',1,decode(lrba_seq,0,'AVAILABLE','BEING USED'),3, 'BEING USED', state) "BLOCK STATUS",count(*) from x$bh group by decode(state,0,'FREE',1,decode(lrba_seq,0,'AVAILABLE','BEING USED'),3, 'BEING USED', state);
BLOCK STATUSCOUNT(*)
---------------------------------------- ----------
BEING USED1876
SQL> select sum(pct_bufgets) "Percent" from (select rank() over ( order by buffer_gets desc ) as rank_bufgets,to_char(100 * ratio_to_report(buffer_gets) over (),'999.99') pct_bufgets from v$sqlarea ) where rank_bufgets < 11;
Percent
----------
10.23
一般在8%左右,小于5%为最佳。
调整滥用磁盘读操作的主要语句:
我发现在没有作调整的情况下,在绝大多数的系统中,访问量占前25位的语句的磁盘读操作将占用整个系统所有磁盘和/或内存读操作的75%。
SQL> select disk_reads, substr(sql_text,1,4000) from v$sqlareaorder by disk_reads desc;
表和与它们相关联的索引应当放置在不同的物理磁盘上,以便减少文件I/O。
以上测试也可以通过AWR和STATSPACK来查看.在分析结果中,我们首先要看的十项内容:
1.首要的5个等待时间(定时事件)
2.负载简档(Load profile)
3.实例效率点击率(Instance efficiency hit ratios)
4.等待时间(Wait events)
5.闩锁等待(Latch waits)
6.首要的SQL(Top SQL)
7.实例活动(Instance activity)
8.文件I/0和段统计数据(File I/0 and segement statistics)
9.内存分配(Memory allocation)
10.缓冲区等待(Buffer waits)
------------------------------End------------------------------------------------------
以上是“如何检查Oracle命中率”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!
网页标题:如何检查Oracle命中率
分享路径:http://pwwzsj.com/article/pesdgc.html