我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何检查Oracle命中率

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何检查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命中率”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何检查Oracle命中率

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux 下如何检查内存使用率

在排查系统问题,或者应用变慢,或者不明原因问题时,第一件事就是要检查系统的内存使用率。 本文讲解如何在 Linux 中使用不同的几个命令来检查 RAM 内存使用率。 一、free 命令 free命令是检查一个 Linux 系统中内存使用率最
2022-06-03

如何在Oracle中检查变量状态

在Oracle中,您可以使用以下语句来检查变量的状态:使用SHOW VARIABLE语句来查看当前会话中所有变量的值和状态。SHOW VARIABLE;使用DEFINE命令来定义一个变量,并使用PRINT命令来打印变量的值。DEFINE m
如何在Oracle中检查变量状态
2024-08-24

Oracle存储过程中如何检查表是否存在

在Oracle存储过程中如何检查表是否存在在Oracle数据库中,对于开发人员来说经常需要编写存储过程来完成一些复杂的业务逻辑。在编写存储过程时,有时需要在程序中判断某张表是否存在,以便根据表是否存在来执行不同的操作。本文将介绍在Orac
Oracle存储过程中如何检查表是否存在
2024-03-08

Oracle存储过程中如何检查表是否存在

在Oracle存储过程中如何检查表是否存在在Oracle数据库中,对于开发人员来说经常需要编写存储过程来完成一些复杂的业务逻辑。在编写存储过程时,有时需要在程序中判断某张表是否存在,以便根据表是否存在来执行不同的操作。本文将介绍在Orac
Oracle存储过程中如何检查表是否存在
2024-03-08

在Python中如何检查对象

这篇文章主要介绍在Python中如何检查对象,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在 Python 中检查对象我们可以通过调用 dir() 方法来检查 Python 中的对象。这是一个简单的例子。test =
2023-06-27

我们如何在 MySQL 查询中检查 NULL?

借助 IS NULL 运算符,我们可以在 MySQL 查询中检查 NULL。我们不能使用 =(比较运算符),因为我们知道 NULL 不是一个值。以下使用“员工”表中的数据的示例将展示它 - 示例mysql> Select * from Em
2023-10-22

编程热搜

目录