返回顶部
首页 > 资讯 > 数据库 >怎么使用hanganalyze
  • 472
分享到

怎么使用hanganalyze

2024-04-02 19:04:59 472人浏览 薄情痞子
摘要

本篇内容主要讲解“怎么使用hanganalyze”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用hanganalyze”吧!hanganalyze 和sy

本篇内容主要讲解“怎么使用hanganalyze”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用hanganalyze”吧!

hanganalyze 和systemstate还是不同的,hanganalyze 里面会有清晰的等待链、等待时间、callstack等,比较轻量级。systemstate 相对hanganalyze 信息较多,会有很多proces和session的信息,还会有shared pool的信息,但是看等待链比较吃力。

1.命令

(1)单实例
sql>oradebug setmypid 
SQL>oradebug unlimit 
SQL>oradebug hanganalyze 3 
等1~2分钟 
SQL>oradebug hanganalyze 3 
等1~2分钟 
SQL>oradebug hanganalyze 3 
(2).RAC
SQL>oradebug setmypid 
SQL>oradebug unlimit 
SQL>oradebug -g all hanganalyze 3 
等1~2分钟 
SQL>oradebug -g all hanganalyze 3 
等1~2分钟 
SQL>oradebug -g all hanganalyze 3

2.解读trace文件

(1).State of nodes

([nodenum]/cnode/sid/sess_srno/session/ospid/state/start/finish/[adjlist]/predecessor):

[894]/0/895/60406/0xba362838/17792/NLEAF/261/264/[908]/1004

[908]/0/909/3031/0xba3754c8/16376/LEAF/262/263//894

[1004]/0/1005/23626/0xba3f61c8/18465/NLEAF/405/406/[894][908]/none

nodenum:定义每个session的序列号

sid:session的sid

sess_srno:session的Serial#

ospid:OS的进程ID

state:node的状态

adjlist:表示blocker node

predecessor:表示waiter node

State有如下几种状态:

(1)IN_HANG:如果Session处于这种状态,表示Session遇到deadlock或者处于hung状态。

(2)LEAF/LEAF_NW:这些Session通常是“blocker”或者是等待某些资源的“slow” node,通过字段“predecessor” 可以很容易标识出这些node。

(3)NLEAF:这些Session通常被认为是“stuck”会话,意味着这些Session在等待某些Session的资源。通过字段“adjlist”可以很容易的定义该进程的blocker。

(4)IGN/IGN_DMP:这些Session通常是IDLE Session。

(5)SINGLE_NODE and SINGLE_NODE_NW 与leaf和leaf_nw相同,只是它们没有依赖于它们的进程

根据上述信息可以得出:

[1004] block [894][908]

[894] block [908]

(2).CYCLES 处于死状态的会话之间的进程依赖性

Cycle 1 : <sid/sess_srno/proc_ptr/ospid/wait_event> :
    <980/3887/0xe4214964/24065/latch free>
 -- <2518/352/0xe4216560/24574/latch free>
 -- <55/10/0xe41236a8/13751/latch free>

(3).Found blocker会话,通常情况是1个session block了很多session会在这部分显示

Found 21 objects waiting for <sid/sess_srno/proc_ptr/ospid/wait_event>
    <55/10/0xe41236a8/13751/latch free>
Found 12 objects waiting for <sid/sess_srno/proc_ptr/ospid/wait_event>
    <2098/2280/0xe42870d0/3022/db file scattered read>
Found 12 objects waiting for <sid/sess_srno/proc_ptr/ospid/wait_event>
    <1941/1783/0xe41ac9e0/462/No Wait>
Found 12 objects waiting for <sid/sess_srno/proc_ptr/ospid/wait_event>
    <980/3887/0xe4214964/24065/latch free>

(4).Chain 等待链上涉及的会话。等待链意味着一个会话正在阻塞一个或多个其他会话。

Open chains found:
Chain 1 : <cnode/sid/sess_srno/proc_ptr/ospid/wait_event> :
    <0/909/3031/0xbcc5dc48/16376/SQL*Net message from client>
 -- <0/895/60406/0xbcc54448/17792/enq: TX - row lock contention>
 -- <0/1005/23626/0xbcc5fc48/18465/enq: TX - row lock contention>

(5).Other chains found 不是被Open chains上链阻塞的进程

Chain 2 : <cnode/sid/sess_srno/proc_ptr/ospid/wait_event> :
    <0/820/40757/0xbcc61448/20057/jobq slave wait>
Chain 3 : <cnode/sid/sess_srno/proc_ptr/ospid/wait_event> :
    <0/882/36187/0xbcc68448/19717/jobq slave wait>
Chain 4 : <cnode/sid/sess_srno/proc_ptr/ospid/wait_event> :
    <0/985/3438/0xbcc50448/20054/No Wait>
Chain 5 : <cnode/sid/sess_srno/proc_ptr/ospid/wait_event> :
    <0/1072/2/0xbcbf3448/20322/Streams AQ: qmn slave idle wait>
Chain 6 : <cnode/sid/sess_srno/proc_ptr/ospid/wait_event> :
    <0/1079/2/0xbcbf0448/20117/Streams AQ: waiting for time man>
Chain 7 : <cnode/sid/sess_srno/proc_ptr/ospid/wait_event> :
    <0/1085/1/0xbcbed448/20070/Streams AQ: qmn coordinator idle>

到此,相信大家对“怎么使用hanganalyze”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

您可能感兴趣的文档:

--结束END--

本文标题: 怎么使用hanganalyze

本文链接: https://lsjlt.com/news/63806.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么使用hanganalyze
    本篇内容主要讲解“怎么使用hanganalyze”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用hanganalyze”吧!hanganalyze 和sy...
    99+
    2024-04-02
  • oracle中hanganalyze怎么用
    这篇文章给大家分享的是有关oracle中hanganalyze怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。hanganalyze有两种使用方法:a.alter sessi...
    99+
    2024-04-02
  • myeclipse怎么使用
    myeclipse怎么使用?首先双击打开软件,主界面如图二所示然后点击文件---->新建---->Java项目在项目名那里输入你要新建的项目名称,名称随意。名称输入完之后直接点击完成...
    99+
    2022-02-23
    java教程 myeclipse
  • 怎么使用SQLite3
    这篇文章主要讲解了“怎么使用SQLite3”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用SQLite3”吧!开始使用这个功能强大且通用的数据库吧。应...
    99+
    2024-04-02
  • 怎么使用IndexedDB
    这篇文章主要讲解了“怎么使用IndexedDB”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用IndexedDB”吧!深入研究IndexedDB AP...
    99+
    2024-04-02
  • 怎么使用pg_rewind
    本篇内容主要讲解“怎么使用pg_rewind”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用pg_rewind”吧!pg_rewind  是po...
    99+
    2024-04-02
  • 怎么使用DBV
    这篇文章主要介绍“怎么使用DBV”,在日常操作中,相信很多人在怎么使用DBV问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用DBV”的疑惑有所帮助!接下来,请跟着小编一...
    99+
    2024-04-02
  • 怎么使用RMAN
    本篇内容介绍了“怎么使用RMAN”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!RMAN的备份脚本可以存储在...
    99+
    2024-04-02
  • 怎么使用MindMaster
    本篇内容主要讲解“怎么使用MindMaster”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用MindMaster”吧!MindMaster可谓是思维导图...
    99+
    2024-04-02
  • Redis怎么使用
    这篇文章给大家分享的是有关Redis怎么使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、Redis简介 什么是Redis?全称:REmote DIctionary Serv...
    99+
    2024-04-02
  • logminer怎么使用
    这篇文章主要讲解了“logminer怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“logminer怎么使用”吧! Log...
    99+
    2024-04-02
  • MySQL怎么使用
    这篇文章主要介绍MySQL怎么使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、SQL速成  以下是一些重要的SQL快速参考,有关SQL的语法和在标准SQL上增加的特性,请查询M...
    99+
    2024-04-02
  • 怎么使用NTVS
    本篇内容介绍了“怎么使用NTVS”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!就在你认为Redmond不可...
    99+
    2024-04-02
  • 怎么使用Json
    本篇内容主要讲解“怎么使用Json”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Json”吧!Json一般用在少量的数据处理。因为格式简单,操作方便,而...
    99+
    2024-04-02
  • 怎么使用Dart
    本篇内容介绍了“怎么使用Dart”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!下面是简单的Hello Wo...
    99+
    2024-04-02
  • section怎么使用
    今天小编给大家分享一下section怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2024-04-02
  • 怎么使用Sass
    这篇“怎么使用Sass”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Sass”文章...
    99+
    2024-04-02
  • 怎么使用Binlog
    本篇内容介绍了“怎么使用Binlog”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!不知道是否你还在为下面的...
    99+
    2024-04-02
  • 怎么使用parse
    这篇文章主要讲解了“怎么使用parse”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用parse”吧!1. 真实案例拿一个最近使用 parse 的真实...
    99+
    2024-04-02
  • 怎么使用JS
    本篇内容主要讲解“怎么使用JS”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用JS”吧!1. Function 构造函数Function()构造函数虽然不...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作