返回顶部
首页 > 资讯 > 数据库 >如何根据awr报告查看最慢的sql语句
  • 238
分享到

如何根据awr报告查看最慢的sql语句

2024-04-02 19:04:59 238人浏览 八月长安
摘要

这篇文章主要介绍了如何根据awr报告查看最慢的sql语句,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 当系统

这篇文章主要介绍了如何根据awr报告查看最慢的sql语句,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

当系统运行了一段时间后,系统基本也趋于稳定了,SQL调优也变了DBA的一个主要的工作内容,很多时候都是通过查看awr报告来检查出有性能瓶颈的SQL语句,通过这个可以很清晰的看到具体运行多少时间、次数、CPU、io的比例。



但是每次都去查看awr报告是一件很繁琐的事情,如果可以单独的查看哪些有问题的sql,就不用每次都去生成一个awr报告了。dba_hist_sqlstat这个视图记录了每次snap_id里面的sql信息,这里帮大家把整个脚本编写出来了。


点击(此处)折叠或打开

  1. SELECT v.SQL_TEXT,m.* FROM (select distinct snap_id,

  2.                 sql_id,

  3.                 EXECUTIONS_DELTA,

  4.                 trunc(max(ELAPSED_TIME_DELTA)

  5.                       OVER(PARTITION BY snap_id, sql_id) / 1000000,

  6.                       0) max_elapsed,

  7.                 trunc((max(ELAPSED_TIME_DELTA)

  8.                        OVER(PARTITION BY snap_id, sql_id)) /

  9.                       (SUM(ELAPSED_TIME_DELTA) OVER(PARTITION BY snap_id)),

  10.                       2) * 100 per_total

  11.   from dba_hist_sqlstat t WHERE T.snap_id IN (SELECT MAX(snap_id) FROM dba_hist_sqlstat) ) M,v$sql v

  12.   where m.sql_id=v.sql_id and m.max_elapsed>=300

这个脚本是查找m.max_elapsed>=300(这边的单位是秒),也是5分钟的时间,可以根据系统的实际情况进行定义;


可以看出sql_id值为d1ftvurv76hct运行一次,这次运行的时间为1199s,占总体消耗的36%。


【另】可以通过运行定时job执行这条sql语句,然后发送有问题的sql信息到用户的邮箱;

感谢你能够认真阅读完这篇文章,希望小编分享的“如何根据awr报告查看最慢的sql语句”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网数据库频道,更多相关知识等着你来学习!

您可能感兴趣的文档:

--结束END--

本文标题: 如何根据awr报告查看最慢的sql语句

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

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

猜你喜欢
  • 如何根据awr报告查看最慢的sql语句
    这篇文章主要介绍了如何根据awr报告查看最慢的sql语句,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 当系统...
    99+
    2024-04-02
  • mysql如何查询慢的sql语句
    这篇文章主要讲解了“mysql如何查询慢的sql语句”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql如何查询慢的sql语句”吧! ...
    99+
    2024-04-02
  • sql语句查询慢如何优化
    优化 SQL 查询性能的方法有很多,以下是一些常见的优化技巧:1. 索引优化:使用适当的索引可以大大提高查询性能。考虑创建索引以支持...
    99+
    2023-09-27
    sql
  • 如何根据操作系统进程号查看oracle对应的SQL语句内容
    这篇文章主要介绍了如何根据操作系统进程号查看oracle对应的SQL语句内容,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 1、  ...
    99+
    2024-04-02
  • 在mysql如何查找效率慢的SQL语句
    这篇文章主要介绍在mysql如何查找效率慢的SQL语句,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、MySQL数据库有几个配置选项可以帮助我们及时捕获低效SQL语句1,slow_...
    99+
    2024-04-02
  • 如何找出Mysql查询速度慢的SQL语句
    小编给大家分享一下如何找出Mysql查询速度慢的SQL语句,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!启动Mysql时加参数-...
    99+
    2024-04-02
  • MySQL如何快速查看原始SQL语句
    这篇文章主要讲解了“MySQL如何快速查看原始SQL语句”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL如何快速查看原始SQL语句”吧!准备工作启用...
    99+
    2024-04-02
  • 如何查看阿里云数据库报告
    阿里云数据库是一种稳定可靠的云数据库服务,可以帮助用户轻松地存储、管理和分析数据。在使用阿里云数据库时,了解数据库的运行状态和性能是非常重要的。本文将介绍如何查看阿里云数据库报告,帮助用户更好地管理和优化数据库。1. 登录阿里云控制台首先...
    99+
    2024-01-20
    阿里 数据库 报告
  • oracle数据库查看锁表的sql语句整理
    目录关键表查看锁表的SIDsql1sql2查看锁表执行语句用sid查询单个查询所有加锁的sql查询未提交事务的SQL杀死锁总结 关键表 V$LOCKED_OBJECT :记录锁信息的表v$sessio...
    99+
    2023-10-26
    oracle查看锁表sql语句 oracle 锁表如何查看 oracle查找锁表语句
  • 如何实现MySQL中查看表的数据的语句?
    标题:MySQL中查看表的数据的语句及具体代码示例MySQL是一种开源的关系型数据库管理系统,它被广泛应用于各种规模的应用程序中。在MySQL中,查看表的数据是一个非常基础的操作,下面将介绍如何通过具体的语句和代码示例实现这一操作。首先,我...
    99+
    2023-11-08
    数据 查询
  • mybatis mapper.xml中如何根据数据库类型选择对应SQL语句
    目录mapper.xml根据数据库类型选择对应SQL语句1、spring-database.xml文件中配置2、mapper.xml文件中配置mapper.xml动态SQL语句用法i...
    99+
    2024-04-02
  • 如何查看创建特定MySQL数据库的语句?
    借助CREATE DATABASE db-name命令,我们可以查看创建任意MySQL数据库的语句。mysql> SHOW CREATE DATABASE Sample; +----------+-------------------...
    99+
    2023-10-22
  • Spark SQL是什么,如何使用SQL语句查询数据
    Spark SQL是Apache Spark中的一个组件,用于支持结构化数据处理。它提供了一个用于执行SQL查询的接口,允许用户使用...
    99+
    2024-04-09
    Spark
  • 如何使用SQL语句在MySQL中查询数据
    要在MySQL中查询数据,可以使用SELECT语句。以下是一个简单的例子: SELECT * FROM table_name...
    99+
    2024-04-09
    MySQL
  • sql查询表中根据某列排序的任意行语句是什么
    这篇文章主要讲解了“sql查询表中根据某列排序的任意行语句是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“sql查询表中根据某列排序的任意行语句是什么”...
    99+
    2024-04-02
  • 图文详解Mysql中如何查看Sql语句的执行时间
    目录一、初始SQL准备二、Mysql查看Sql语句的执行时间三、不同查询的执行时间总结Mysql中如何查看Sql语句的执行时间 一、初始SQL准备 初始化表 -- 用户表 cre...
    99+
    2024-04-02
  • MySQL根据某一个或者多个字段查找重复数据的sql语句
    sql 查出一张表中重复的所有记录数据 1.表中有id和name 两个字段,查询出name重复的所有数据 select * from xi a where (a.username)...
    99+
    2024-04-02
  • 如何执行基本的SQL查询语句
    要执行基本的SQL查询语句,首先需要连接到数据库管理系统(如MySQL、SQL Server、Oracle等),然后打开一个SQL查...
    99+
    2024-03-06
    MySQL
  • SQL Server数据库的如何修复SQL语句
    SQL Server数据库的如何修复SQL语句,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。出现这些情况的原因,往往是因为数据库有些损坏,...
    99+
    2024-04-02
  • sql中如何查看delete的数据
    这篇文章主要介绍sql中如何查看delete的数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!测试数据,在进行删除delete的时候有索引和没有索引的对象的统计信息,会话的统计信息,会话的等待事件dele...
    99+
    2023-06-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作