latch free 三板斧-凯发app官方网站

凯发app官方网站-凯发k8官网下载客户端中心 | | 凯发app官方网站-凯发k8官网下载客户端中心
  • 博客访问: 3502902
  • 博文数量: 718
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 7790
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(718)

文章存档

2024年(4)

2023年(74)

2022年(134)

2021年(238)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

最近访客
相关博文
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·

分类: oracle

2021-12-13 22:50:02


性能诊断,随迟但到的一个问题

要依据latch类型进行诊断,通常是在sql未绑定变量,热块上出现

先抡几下

  1. --正在等什么latch
  2. select name, 'child '||child#, gets, misses, sleeps
  3.     from v$latch_children
  4.    where addr='&p1raw'
  5.   union
  6.   select name, null, gets, misses, sleeps
  7.     from v$latch
  8.    where addr='&p1raw';

  9. --这个似乎更简单
  10. select * from v$latchname
  11.    where latch# = &p2;

  12. --整体情况
  13. select * from (
  14. select latch#, name, gets, misses, sleeps
  15.     from v$latch
  16.    where sleeps>0
  17.    order by sleeps desc) where rownum<11;

  18. -- 确定闩锁活动是否集中在集合中的一个特定闩锁上
  19. select addr, latch#, gets, misses, sleeps
  20.     from v$latch_children
  21.    where sleeps>0
  22.      and latch# = &latch_number_wanted
  23.    order by sleeps;
  24. 如果有多行,需要注意的重要一点是 sleeps 是否合理分布,或者是否有一个或两个子闩锁负责 80% 的 sleeps。如果争用集中在一个或两个子锁上,请记下子latch看到了问题 - 请注意 addr 列

  25. 还可以查询
  26. v$latch_holder --是否一直出现相同的会话
  27. v$session_event
awr里看latch 的统计结果


关于此等待事件的专业讲解:
某些会话正在等待闩锁释放等待但无法获得闩锁。闩锁释放等待保护共享池中的缓冲区缓存或库缓存等内存结构。它们被设计为在很短的时间内举行。如果闩锁不可用,会话将进入睡眠状态并稍后重试该操作。等待闩锁可能很昂贵,因为在等待闩锁时会话可能会在 cpu 上旋转。

shared pool latch
共享池闩锁的争用是由于共享池容量不足、sql 未共享或大量使用数据字典。确保共享池对于应用程序负载足够大,并且尽可能共享 sql 语句

library cache latch
库缓存锁存器的争用可能与共享池锁存器的争用有关,因为库缓存位于共享池内。库缓存闩锁争用通常是由于高解析或共享池过小。如果原因是过度的硬解析,那么您需要查看为什么游标被解析得如此之多。由于 oracle 尝试重用以前解析的应用程序代码,因此假设它是可共享的,则不需要重新解析它。如果库缓存中没有 sql 的已解析表示,则 oracle 将需要对 sql 进行硬解析

cache buffers chains
该锁存器用于保护缓冲区缓存中的缓冲区列表。首先固定的进程将获得一个锁存器,因此其他进程不会更改数据。一旦块被取消固定,第二个用户就可以使用它,依此类推。多个会话可能需要同一个块,从而导致争用。
看一看awr中sql ordered by gets中的sql、segments by logical reads中对象
阅读(810) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
")); function link(t){ var href= $(t).attr('href'); href ="?url=" encodeuricomponent(location.href); $(t).attr('href',href); //setcookie("returnouturl", location.href, 60, "/"); }
网站地图