Oracle 查询 SQL 语句

目录

  • 1. Oracle 查询 SQL 语句
    • 1.1. 性能查询常用 SQL
      • 1.1.1. 查询最慢的 SQL
      • 1.1.2. 列出使用频率最高的 5 个查询
      • 1.1.3. 消耗磁盘读取最多的 sql top5
      • 1.1.4. 找出需要大量缓冲读取(逻辑读)操作的查询
      • 1.1.5. 查询每天执行慢的 SQL
      • 1.1.6. 从 V$SQLAREA 中查询最占用资源的查询
      • 1.1.7. 查询对应 session
      • 1.1.8. 根据 sid 查找完整 SQL 语句
      • 1.1.9. 未知 1

1. Oracle 查询 SQL 语句

1.1. 性能查询常用 SQL

1.1.1. 查询最慢的 SQL

select * from (
select parsing_user_id,executions,sorts
command_type,disk_reads,sql_text from v$sqlarea order by disk_reads desc
)where rownum<10

1.1.2. 列出使用频率最高的 5 个查询

select sql_text,executions
from (select sql_text,executions,rank() over(order by executions desc) exec_rankfrom v$sql)
where exec_rank <=5;

1.1.3. 消耗磁盘读取最多的 sql top5

select disk_reads,sql_text
from (select sql_text,disk_reads,dense_rank() over(order by disk_reads desc) disk_reads_rankfrom v$sql)
where disk_reads_rank <=5;

1.1.4. 找出需要大量缓冲读取(逻辑读)操作的查询

select buffer_gets,sql_text
from (select sql_text,buffer_gets,dense_rank() over(order by buffer_gets desc) buffer_gets_rankfrom v$sql)
where buffer_gets_rank<=5;

1.1.5. 查询每天执行慢的 SQL

SELECT S.SQL_TEXT,S.SQL_FULLTEXT,S.SQL_ID,ROUND(ELAPSED_TIME / 1000000 / (CASEWHEN (EXECUTIONS = 0 OR NVL(EXECUTIONS, 1 ) = 1) THEN1ELSEEXECUTIONSEND),2) "执行时间'S'",S.EXECUTIONS "执行次数",S.OPTIMIZER_COST "COST",S.SORTS,S.MODULE, --连接模式(JDBC THIN CLIENT: 程序)-- S.LOCKED_TOTAL,S.PHYSICAL_READ_BYTES "物理读",-- S.PHYSICAL_READ_REQUESTS "物理读请求",S.PHYSICAL_WRITE_REQUESTS "物理写",-- S.PHYSICAL_WRITE_BYTES "物理写请求",S.ROWS_PROCESSED      "返回行数",S.DISK_READS          "磁盘读",S.DIRECT_WRITES       "直接路径写",S.PARSING_SCHEMA_NAME,S.LAST_ACTIVE_TIMEFROM GV$SQLAREA SWHERE ROUND(ELAPSED_TIME / 1000000 / (CASEWHEN (EXECUTIONS = 0 OR NVL(EXECUTIONS, 1 ) = 1) THEN1ELSEEXECUTIONSEND),2) > 5 --100 0000 微秒=1SAND S.PARSING_SCHEMA_NAME = USERAND TO_CHAR(S.LAST_LOAD_TIME, 'YYYY-MM-DD') =TO_CHAR( SYSDATE, 'YYYY-MM-DD' )AND S.COMMAND_TYPE IN (2 , 3, 5, 6 , 189)ORDER BY "执行时间'S'" DESC;

/*
SQL 中 COMMAND_TYPE 意义:
2: INSERT
3: SELECT
6: UPDATE
7: DELETE
189: MERGE

详情可通过查找 V$SQLCOMMAND 视图
*/

  • V$SQLAREA 官网解释: http://docs.oracle.com/cd/E11882_01/server.112/e40402/dynviews_3064.htm#REFRN30259
  • V$SQLCOMMAND 官网解释: http://docs.oracle.com/cd/E11882_01/server.112/e40402/dynviews_3066.htm#REFRN30632

1.1.6. 从 V$SQLAREA 中查询最占用资源的查询

select b.username username,a.disk_reads reads,a.executions exec,a.disk_reads/decode(a.executions,0,1,a.executions) rds_exec_ratio,a.sql_text Statement
from  v$sqlarea a,dba_users b
where a.parsing_user_id=b.user_idand a.disk_reads > 100000
order by a.disk_reads desc;

用 buffer_gets 列来替换 disk_reads 列可以得到占用最多内存的 sql 语句的相关信息。

  • v$sql: 内存共享 SQL 区域中已经解析的 SQL 语句。(即时)

1.1.7. 查询对应 session

select SE.SID,SE.SERIAL#,PR.SPID,
SE.USERNAME,SE.STATUS,SE.TERMINAL,
SE.PROGRAM,SE.MODULE,
SE.SQL_ADDRESS,ST.EVENT,
ST.P1TEXT,SI.PHYSICAL_READS,SI.BLOCK_CHANGES from v$session se,v$session_wait st,
v$sess_io si,v$process pr
where st.SID=se.SID and st.SID=si.SID
AND SE.PADDR=PR.ADDR
AND SE.SID>6
AND ST.WAIT_TIME=0
AND ST.EVENT NOT LIKE '%SQL%'
ORDER BY PHYSICAL_READS DESC;
SELECT sql_address FROM V$SESSION SS,V$SQLTEXT TT
WHERE SS.SQL_HASH_VALUE=TT.HASH_VALUE AND SID=439;
  • v$sqltext: 存储的是完整的 SQL,SQL 被分割
  • v$sqlarea: 存储的 SQL 和一些相关的信息, 比如累计的执行次数, 逻辑读, 物理读等统计信息(统计)
  • v$sql: 内存共享 SQL 区域中已经解析的 SQL 语句。(即时)

1.1.8. 根据 sid 查找完整 SQL 语句

select sql_text from v$sqltext a where a.hash_value = (select sql_hash_value from v$session b where b.sid = '&sid')
order by piece asc

1.1.9. 未知 1

select a.CPU_TIME,--CPU 时间 百万分之一(微秒)a.OPTIMIZER_MODE,--优化方式a.EXECUTIONS,--执行次数a.DISK_READS,--读盘次数a.SHARABLE_MEM,--占用 shared pool 的内存多少a.BUFFER_GETS,--读取缓冲区的次数a.COMMAND_TYPE,--命令类型 (3:select,2:insert;6:update;7delete;47:pl/sql 程序单元)a.SQL_TEXT,--Sql 语句a.SHARABLE_MEM,a.PERSISTENT_MEM,a.RUNTIME_MEM,a.PARSE_CALLS,a.DISK_READS,a.DIRECT_WRITES,a.CONCURRENCY_WAIT_TIME,a.USER_IO_WAIT_TIMEfrom SYS.V_$SQLAREA aWHERE PARSING_SCHEMA_NAME = 'CHEA_FILL'--表空间order by a.CPU_TIME desc

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/90454.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用vue-cli搭建SPA项目

目录 引言 什么是SPA&#xff1f; Vue CLI 是什么&#xff1f; 步骤1&#xff1a;安装 Vue CLI 为什么选择 Vue CLI 作为项目搭建工具 安装vue-cli 步骤2&#xff1a;创建新的 Vue 项目 创建成功后的项目结构 步骤3&#xff1a;项目结构概述 vue项目结构说明 步骤4&a…

Vue中前端导出word文件

很多时候在工作中会碰到完全由前端导出word文件的需求&#xff0c;因此特地记录一下比较常用的几种方式。 一、提供一个word模板 该方法提供一个word模板文件&#xff0c;数据通过参数替换的方式传入word文件中&#xff0c;灵活性较差&#xff0c;适用于简单的文件导出。需要…

论文笔记(整理):轨迹相似度顶会论文中使用的数据集

0 汇总 数据类型数据名称数据处理出租车数据波尔图 原始数据&#xff1a;2013年7月到2014年6月&#xff0c;170万条数据 ICDE 2023 Contrastive Trajectory Similarity Learning with Dual-Feature Attention 过滤位于城市&#xff08;或国家&#xff09;区域之外的轨迹 过…

Idea引入thymeleaf失败解决方法

报错 Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback.Fri Sep 29 09:42:00 CST 2023 There was an unexpected error (typeNot Found, status404). 原因&#xff1a;html没有使用thymeleaf 首先要引入…

Linux Day18 TCP_UDP协议及相关知识

一、网络基础概念 1.1 网络 网络是由若干结点和连接这些结点的链路组成&#xff0c;网络中的结点可以是计算机&#xff0c;交换机、 路由器等设备。 1.2 互联网 把多个网络连接起来就构成了互联网。目前最大的互联网就是因特网。 网络设备有&#xff1a;交换机、路由器、…

【MATLAB源码-第38期】基于OFDM的块状导频和梳状导频误码率性能对比,不同信道估计方法以及不同调制方式对比。

1、算法描述 块状导频和梳状导频都是用于无线通信系统中信道估计的方法。 块状导频&#xff1a; 定义&#xff1a; 在频域上&#xff0c;块状导频是连续放置的一组导频符号。这意味着所有的导频符号都集中在一个短的时间段内发送。 优点&#xff1a; 对于时间选择性信道&#…

Python 打印素数

"""打印素数介绍&#xff1a;素数是指只有两个正因数&#xff08;1和它本身&#xff09;的自然数&#xff0c;而且必须大于1。例如&#xff1a;2、3、5、7、11、13、17、19、23、29等等都是素数。小于2的数不是素数&#xff0c;因为它没有两个正因数。例如&…

uniapp:配置动态接口域名,根据图片访问速度,选择最快的接口

common.js // 动态测速选择的域名 // h5直接返回默认第一个域名 // vue文件用到域名的话用this.$baseURL let domains [{uri:192.168.31.215:9523, speed:0},{uri:api.ceshi.org, speed:0}, ]export const protocol {api: http://,//本地// api: https://api.,//正式h5Url: h…

基于JAVA+SpringBoot的新闻发布平台

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 随着科技的飞速发展和…

IO流 之 缓冲流(字节缓冲流和字符缓冲流)

缓冲流对原始流进行了包装&#xff0c;以提高原始流读写数据的性能。 字节缓冲流&#xff08;BufferedInputStream和BufferedOutputStream&#xff09; 字节缓冲流在内存中提供了一个默认为8kb的区域&#xff0c;用于缓冲&#xff0c;当流开始时&#xff0c;先读取一个8kb的内…

blender快捷键

1&#xff0c; shift a 添加物体 2&#xff0c;ctrl alt q 切换四格视图 3, ~ 展示物体的各个视图按钮&#xff0c;&#xff08;~ 就是tab键上面的键&#xff09; 4&#xff0c;a 全选&#xff0c;全选后&#xff0c;点 ctrl 鼠标框选 减去已经选择的&#xff1b…

车道线分割检测

利用opencv&#xff0c;使用边缘检测、全局变化梯度阈值过滤、算子角度过滤、HLS阈值过滤的方法进行车道线分割检测&#xff0c;综合多种阈值过滤进行检测提高检测精度。 1.利用cv2.Sobel()计算图像梯度(边缘检测) import cv2 import numpy as np import matplotlib.pyplot a…

skywalking入门

参考&#xff1a; https://www.jianshu.com/p/ffa7ddcda4ab 参考&#xff1a; https://developer.aliyun.com/article/1201085 skywalking&#xff08;APM&#xff09; 调用链路分析以及应用监控分析工具 Skywalking主要由三大部分组成&#xff1a;agent、collector、webapp-…

一文详解 JDK1.8 的 Lambda、Stream、LocalDateTime

Lambda Lambda介绍 Lambda 表达式(lambda expression)是一个匿名函数&#xff0c;Lambda表达式基于数学中的λ演算得名&#xff0c;直接对应于其中的lambda抽象(lambda abstraction)&#xff0c;是一个匿名函数&#xff0c;即没有函数名的函数。 Lambda表达式的结构 一个 Lamb…

十六.镜头知识之工业镜头的质量判断因素

十六.镜头知识之工业镜头的质量判断因素 文章目录 十六.镜头知识之工业镜头的质量判断因素1.分辨率(Resolution)2.明锐度(Acutance)3.景深(DOF)&#xff1a;4. 最大相对孔径与光圈系数5.工业镜头各参数间的相互影响关系5.1.焦距大小的影响情况5.2.光圈大小的影响情况5.3.像场中…

CISSP学习笔记:人员安全和风险管理概念

第二章 人员安全和风险管理概念 2.1 促进人员安全策略 职责分离: 把关键的、重要的和敏感工作任务分配给若干不同的管理员或高级执行者&#xff0c;防止共谋工作职责:最小特权原则岗位轮换:提供知识冗余&#xff0c;减少伪造、数据更改、偷窃、阴谋破坏和信息滥用的风险&…

点云从入门到精通技术详解100篇-基于深度学习的三维植物点云分割网络(续)

目录 3.7定量衡量指标 3.8 语义分割结果 3.9实例分割结果 3.10 与其他方法的对比 3.11 剥离实验

快速幂矩阵-python

看了大神讲解&#xff0c;理论在这里&#xff1a;快速幂算法&#xff08;全网最详细地带你从零开始一步一步优化&#xff09;-CSDN博客 例题&#xff1a;求整数 base 的 整数 power 次方&#xff0c;对整数 num_mod 取幂。 python 代码如下&#xff1a; import timedef norm…

LabVIEW在运行时调整表控件列宽

LabVIEW在运行时调整表控件列宽 如何在LabIEW中运行时调整表控件的列宽大小&#xff1f; 在VI运行时&#xff0c;有两种不同的方法可以更改表中列的宽度。首先&#xff0c;可以使用鼠标手动更改它们;其次&#xff0c;可以从框图中以编程方式更改它们。 手动更改列宽 只有在…

设计模式——8. 代理模式

1. 说明 代理模式(Proxy Pattern)是一种结构型设计模式,它允许一个对象(代理对象)充当另一个对象(真实对象)的接口,以控制对该对象的访问。代理对象在访问真实对象时可以执行一些额外的操作,例如权限验证、懒加载、缓存、日志记录等,而无需修改真实对象的代码。 代…