返回顶部
首页 > 资讯 > 数据库 >通过dba_hist_*来进行诊断
  • 661
分享到

通过dba_hist_*来进行诊断

2024-04-02 19:04:59 661人浏览 泡泡鱼
摘要

在oracle10g中增加了dba_his_*类统计信息表,在瓶颈时间过时了的时候,可以参考这些表来诊断瓶颈来源。 1、确定时间段: select * from dba_hist_sna

oracle10g中增加了dba_his_*类统计信息表,在瓶颈时间过时了的时候,可以参考这些表来诊断瓶颈来源。

1、确定时间段:

select * from dba_hist_snapshot

where snap_id between &snapid1 and &snapid2

order by end_interval_time;

例如以上&snapid1 and &snapid2的值分别为10910 and 10913

2、对瓶颈时间段的等待时间进行汇总排序

select event,count(*) from dba_hist_active_sess_history

where snap_id between 10910 and 10913

group by event

order by 2;

[@more@]

3、根据排序情况,确定等待时间并根据确定等待时间,进一步观察相关字段内容:

select * from dba_hist_active_sess_history

where snap_id between 10910 and 10913

and event='enq: TX - row lock contention'

order by sample_time;

4、明确该等待时间相关的sql_ID:

select sql_id,count(*) from dba_hist_active_sess_history

where snap_id between 10910 and 10913

and event='enq: TX - row lock contention'

group by sql_id;

5、根据SQL_ID找出SQL语句:

select * from dba_hist_active_sess_history

where snap_id between 10910 and 10913

and event='enq: TX - row lock contention'

and sql_id='fhdxrqd4stwqk';

6、查看SQL当时对应的执行计划:

select id,operation, options,object_owner,object_name,object_type,cost,cardinality,bytes,cpu_cost,io_cost

from DBA_HIST_SQL_PLAN where sql_id='djpvmvjddy8av'

order by id;

也可以调用dbms_xplan.display_awr包来查看执行计划:

SQL> select * from table(dbms_xplan.display_awr('djpvmvjddy8av'));

7、也可查看类此对象的更多SQL:

select * from dba_hist_active_sess_history

where snap_id between 10910 and 10913

and sql_text like '%QRTZ_SCHEDULE%';

根据以上结果对相应的SQL或等待时间进行优化

您可能感兴趣的文档:

--结束END--

本文标题: 通过dba_hist_*来进行诊断

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

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

猜你喜欢
  • 通过dba_hist_*来进行诊断
    在Oracle10g中增加了dba_his_*类统计信息表,在瓶颈时间过时了的时候,可以参考这些表来诊断瓶颈来源。 1、确定时间段: select * from dba_hist_sna...
    99+
    2024-04-02
  • 使用SQL_TRACE进行数据库诊断
    http://www.eygle.com/case/Use.sql_trace.to.Diagnose.database.htm 包dbms_system定义如下: SQL> d...
    99+
    2024-04-02
  • 怎么进行SQL问题的诊断
    这篇文章将为大家详细讲解有关怎么进行SQL问题的诊断,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 问题 诊断 用户反应有一个员工不能设置他的考勤月历了。...
    99+
    2024-04-02
  • 怎么进行电脑内存诊断
    本篇内容主要讲解“怎么进行电脑内存诊断”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么进行电脑内存诊断”吧!这项是Windows系统中专门针对内存的自检功能,在任务栏的Cortana搜索栏输入...
    99+
    2023-06-28
  • 怎样对Linux进行性能诊断
    这篇文章将为大家详细讲解有关怎样对Linux进行性能诊断,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。当你发现 Linux 服务器上的系统性能问题,在最开始的 1 分钟时间里,你会查看哪些系...
    99+
    2023-06-28
  • 使用ErrorStack进行错误跟踪及诊断!
    在使用oracle数据库的过程中,可能会遇到各种各样的错误或异常,很多异常提示并不具体,我们有必要了解一下oracle的ErrorStack跟踪方式。ErrorStack是oracle提供的一种对于错...
    99+
    2024-04-02
  • 通过v$wait_chains视图诊断数据库hang和Contention
    11g之前,通常我们数据库hang住了之后,我们会对数据库做hang analyze来进行分析,在11g之后,我们可以通过一个新的视图v$wait_chains来诊断数据库hang和contention...
    99+
    2024-04-02
  • mysql中怎么利用performance_schema进行故障诊断
    小编给大家分享一下mysql中怎么利用performance_schema进行故障诊断,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!instrunments:生产者,用于采集mysql中各...
    99+
    2024-04-02
  • 通过对通道进行多次写入来理解 golang 阻塞通道行为
    php小编柚子在这篇文章中将向大家介绍如何通过对通道进行多次写入来理解 golang 阻塞通道的行为。在golang中,通道是一种用于在协程之间传递数据的重要机制。当通道已满时,写入操...
    99+
    2024-02-09
    golang开发
  • 如何使用ErrorStack进行错误跟踪及诊断
    这篇文章主要为大家展示了“如何使用ErrorStack进行错误跟踪及诊断”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用ErrorStack进行错误跟踪及...
    99+
    2024-04-02
  • jQuery下通过$.browser来判断浏览器.
    使用方法: $.browser.['浏览器关键字'] 复制代码 代码如下: $(function() { if($.browser.msie) { alert("this is ms...
    99+
    2022-11-21
    $.browser 判断浏览器
  • 如何通过实现ThreadFactory来对线程进行命名
    这篇文章主要介绍如何通过实现ThreadFactory来对线程进行命名,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!本文记录@Async的基本使用以及通过实现ThreadFactory来实现对线程的命名。@Async...
    99+
    2023-06-15
  • PHP中如何进行故障诊断和容错分析?
    PHP是一种流行的编程语言,被广泛用于网站开发和服务端程序编写等领域。由于PHP应用程序的规模和复杂性不断增加,程序中的故障和错误也不可避免。因此,进行故障诊断和容错分析是PHP程序员必备的技能之一。本文将介绍PHP中故障诊断和容错分析的基...
    99+
    2023-05-22
    PHP 故障诊断 容错分析
  • Oracle基础:通过sqlplus执行sql语句后的结果进行判断
    这篇文章介绍一下如何对sqlplus执行的sql语句结果进行判断。 环境准备 使用Oracle的精简版创建docker方式的demo环境,详细可参看:  https://www.jb51.net/...
    99+
    2024-04-02
  • 如何利用errorstack事件进行错误跟踪和诊断
    这篇文章主要为大家展示了“如何利用errorstack事件进行错误跟踪和诊断”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何利用errorstack事件进行错...
    99+
    2024-04-02
  • Oracle通过函数进行进制转化
    十六进制转化为十进制:to_number()SQL> select to_number('a','x') from dual; TO_NUMBER('...
    99+
    2024-04-02
  • 60,000 毫秒内对Linux进行性能诊断的示例分析
    这篇文章给大家介绍60,000 毫秒内对Linux进行性能诊断的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。当你发现 Linux 服务器上的系统性能问题,在最开始的 1 分钟时间里,你会查看哪些系统指标呢Ne...
    99+
    2023-06-15
  • 如何在MySQL中进行数据库性能监控和诊断
    在MySQL中进行数据库性能监控和诊断可以通过以下几种方式: 使用MySQL自带的性能监控工具:MySQL自带了一些性能监控工具...
    99+
    2024-03-06
    MySQL
  • 通过ssh进行远程访问
    文章目录 前言 1. 前期准备 1.1 Windows 安装 OpenSSH 服务器 1.2 Linux 安装 openssh-server 2. 局域网...
    99+
    2023-09-23
    ssh 服务器 linux
  • 通过堡垒主机进行 SSH
    对于一个Golang开发者来说,牢固扎实的基础是十分重要的,编程网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《通过堡垒主机进行 SSH》,主要介绍了,希望对大家的知识积累有所帮助,快点...
    99+
    2024-04-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作