网站大量收购独家精品文档,联系QQ:2885784924

Oracle9i数据库性能检查指导方案汇.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Oracle9i数据库性能检查指导方案汇

Oracle 9i 数据库性能检查指导方案 以sysdba身份登录数据库: sqlplus “sys/password as sysdba” ? 一.内存性能评估 在内存性能评估的时候,我们使用内存性能指数(MPI, Memory Performance Index),下表列出了MPI中的各项指数,这个评分系统并不意味着对内存的使用和分配的全方位评估,而只是代表一个晴雨表,反映当前系统内存的使用和分配状况。 MPI指数 分类 所需等级 最高分 缓冲区命中率(Buffer Cache) 98% 30 数据字典命中率(Dictionary Cache) 98% 30 库缓存命中率(Library Cache) 98% 30 内存中的排序(Sort in Memory) 98% 30 空闲的数据缓冲区比例 10-25% 30 使用最多的前10个SQL占用的内存 5% 60 是否已经调整使用最多的前25个SQL 是 30 是否尝试固定高速缓存中经常使用的对象 是 10 MPI指数 总分 250 ? 1. 缓冲区命中率 显示了对于数据总读取量而言,非磁盘读取(缓冲区命中)的百分比。当然,十分高的命中率并不代表数据库性能一定优良,也有可能是糟糕的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 Ratio from v$sysstat; 评估准则: 等级 分数 90% 0 90-94% 10 95-98% 20 98% 30 ? 2. 数据字典命中率 显示了对数据字典和其它对象的内存读操作的百分比。 检查方法: select (1 - (sum(getmisses) / sum(gets))) * 100 Hit Ratio from v$rowcache; 评估准则: 等级 分数 85% 0 86-92% 10 92-98% 20 98% 30 ? 3. 库缓存命中率 显示了对SQL和PL/SQL对象的内存读操作的百分比。同样注意,很高的命中率并不总是反映数据库性能优秀。 检查方法: select sum(pins) / (sum(pins) + sum(reloads)) * 100 Hit Ratio from v$librarycache; ?评估准则: 等级 分数 90% 0 90-94% 10 94-98% 20 98% 30 ? 4. 内存中的排序 根据初始化参数PGA_AGGREGATE_TARGET或者SORT_AREA_SIZE的值,用户的排序操作可能在内存中执行,也可能在临时表空间中执行。这个检查用以显示在内存中排序占总排序的百分比。 检查方法: 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) Pct Memory Sorts from v$sysstat a, v$sysstat b where a.name = sorts (disk) and b.name = sorts (memory); 评估准则: 等级 分数 90% 0 90-94% 10 94-98% 20 98% 30 ? 5. 空闲的数据缓冲区比例 空闲的记录数除以X$BH表中的记录总数(即所分配的数据块缓冲区的总数)得到的空闲缓冲区百分比。同样注意,拥有众多空闲缓冲区的数据库不一定是最佳环境,因为可能是缓冲区设置过大,浪费内存。 ?检查方法: 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,

文档评论(0)

liwenhua11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档