oracle 动态性能视图

Oracle 数据库中的 V$SQLAREA 是一个动态性能视图(Dynamic Performance View),用于记录共享池(Shared Pool)中所有 SQL 语句的统计信息。每个 SQL 语句在共享池中存储为一个游标(Cursor),而 V$SQLAREA 提供了这些游标的聚合信息。

核心字段

  1. SQL_ID

    • SQL 语句的唯一标识符(哈希值),用于跟踪特定 SQL。

  2. HASH_VALUE

    • 旧版 SQL 的哈希值(与 SQL_ID 并存,但 SQL_ID 更常用)。

  3. ADDRESS

    • SQL 语句在共享池中的内存地址,常用于联合其他视图(如 V$SQLTEXT)。

  4. VERSION_COUNT

    • 共享池中该 SQL 的不同版本游标数量(如因绑定变量窥视导致的不同执行计划)。

  5. PARSING_SCHEMA_NAME

    • 解析该 SQL 的数据库用户(模式名)。

  6. EXECUTIONS

    • SQL 语句的总执行次数。

  7. FIRST_LOAD_TIME

    • SQL 首次被加载到共享池的时间戳(格式:YYYY-MM-DD HH24:MI:SS)。

  8. LAST_LOAD_TIME

    • SQL 最后一次被加载到共享池的时间戳。

  9. LAST_ACTIVE_TIME

    • SQL 最后一次执行的时间戳。

性能相关字段

  1. ELAPSED_TIME

    • 所有执行的总耗时(微秒),包括等待时间(如 I/O)。

  2. CPU_TIME

    • 所有执行消耗的 CPU 时间(微秒)。

  3. BUFFER_GETS

    • 所有执行中逻辑读(Logical Reads)的总次数。

  4. DISK_READS

    • 所有执行中物理读(Physical Reads)的总次数。

  5. ROWS_PROCESSED

    • 所有执行中处理的总行数。

  6. OPTIMIZER_COST

    • 优化器估算的 SQL 执行成本(相对值,非实际资源消耗)。

  7. FETCHES

    • 数据获取次数(通常针对查询语句)。

  8. SORTS

    • 所有执行中排序操作的总次数。

其他关键字段

  1. MODULE / ACTION

    • 应用程序通过 DBMS_APPLICATION_INFO 设置的模块名和操作名(用于追踪来源)。

  2. SQL_TEXT

    • SQL 语句的前 1000 个字符(完整 SQL 需关联 V$SQLTEXT)。

  3. PLAN_HASH_VALUE

    • 执行计划的哈希值,用于识别不同执行计划。

  4. CHILD_NUMBER

    • 子游标编号(需联合 V$SQL 使用)。

  5. SHARABLE_MEM

    • 共享内存占用量(字节)。

  6. PERSISTENT_MEM

    • 持久内存占用量(字节)。

  7. RUNTIME_MEM

    • 运行时内存占用量(字节)。

  8. IO_CELL_OFFLOAD_ELIGIBLE_BYTES

    • 可被智能扫描(Exadata)优化的 I/O 字节数(仅适用于 Exadata)。

  9. IO_INTERCONNECT_BYTES

    • 通过存储网络传输的实际 I/O 字节数。

应用场景

  • 性能分析:通过 BUFFER_GETSDISK_READSCPU_TIME 等字段识别高资源消耗的 SQL。

  • 执行计划对比:利用 PLAN_HASH_VALUE 分析同一 SQL 是否因不同执行计划导致性能差异。

  • 绑定变量问题:高 VERSION_COUNT 可能暗示绑定变量窥视(Bind Peeking)引发的问题。

  • SQL 生命周期:通过 LAST_ACTIVE_TIME 判断 SQL 是否长期未使用,以决定是否需优化或清理。

分析排序与资源竞争

通过 SORTS 和 ROWS_PROCESSED 字段,识别大量排序操作的 SQL。

 

SELECT sql_id,sql_text,sorts,rows_processed
FROM v$sqlarea 
WHERE sorts > 1000  -- 排序次数超过阈值
ORDER BY sorts DESC;

字段解释

  1. sql_id

    • 含义:SQL 语句的唯一标识符。

    • 作用:用于区分不同的 SQL 语句,即使 SQL 文本完全相同,Oracle 也会为每次解析生成的执行计划分配唯一的 sql_id

  2. sql_text

    • 含义:SQL 语句的文本内容。

    • 注意:由于视图 v$sqlarea 的限制,较长的 SQL 文本可能被截断。完整文本可通过 v$sqlstats.sql_fulltext 或 DBA_HIST_SQLTEXT(AWR 历史表)查看。

  3. sorts

    • 含义:该 SQL 语句在所有执行过程中触发的 排序操作总次数

    • 背景:排序通常由以下操作触发:

      • ORDER BY

      • GROUP BY

      • DISTINCT

      • 索引创建(如 CREATE INDEX

    • 性能影响

      • 若排序在内存(PGA)中完成,效率较高。

      • 若排序使用临时表空间(磁盘排序),会显著增加 I/O 开销,需优化。

  4. rows_processed

    • 含义:该 SQL 语句在所有执行过程中 处理的总行数

    • 分类

      • 对于 SELECT,表示返回的行数。

      • 对于 INSERT/UPDATE/DELETE,表示影响的行数。

      • 对于 MERGE,表示合并的行数。

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

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

相关文章

OceanBase V4.3.5 上线全文索引功能,让数据检索更高效

近日,OceanBase 4.3.5 BP1 版本正式推出了企业级全文索引功能。该版本在中文分词、查询效率及混合检索能力上进行了全面提升。经过自然语言模式和布尔模式在不同场景下的对比测试,OceanBase 的全文索引性能明显优于 MySQL。 点击下载 OceanBase 社区版…

海康摄像头AI报警、移动侦测报警等通过Ehome/ISUP协议上报到LiveNVR流媒体平台时如何进行报警配置

海康摄像头AI报警、移动侦测报警等通过Ehome/ISUP协议上报到LiveNVR流媒体平台时如何进行报警配置 1、LiveNVR介绍2、如何配置海康摄像头、录像机通过Ehome/ISUP注册到LiveNVR设备 EHOME 接入配置示例设备 ISUP 接入配置示例直播流接入类型 海康ISUP海康 ISUP 设备ID启用保存 3…

golang gmp模型分析

思维导图: 1. 发展过程 思维导图: 在单机时代是没有多线程、多进程、协程这些概念的。早期的操作系统都是顺序执行 单进程的缺点有: 单一执行流程、计算机只能一个任务一个任务进行处理进程阻塞所带来的CPU时间的浪费 处于对CPU资源的利用&…

Redis基础指令(Windows)

1.cmd命令行启动redis 直接cmd打开整个文件 1.1.启动server 输入指令: redis-server.exe redis.windows.conf 会进入serve端 1.2.启动客户端 !!重新打开一个cmd,方法和上面一样!! 之后输入 redis-…

vue:前端预览 / chrome浏览器设置 / <iframe> 方法预览 doc、pdf / vue-pdf 预览pdf

一、本文目标 <iframe> 方法预览 pdf 、word vue-pdf 预览pdf 二、<iframe> 方法 2.1、iframe 方法预览需要 浏览器 设置为&#xff1a; chrome&#xff1a;设置-隐私设置和安全性-网站设置-更多内容设置-PDF文档 浏览器访问&#xff1a; chrome://settings/co…

【C++游戏引擎开发】第11篇:GLFW、GLAD环境搭建与第一个三角形渲染

一、GLFW、GLAD安装 1.1 vcpkg安装相关库 跨平台C++包管理利器vcpkg完全指南 # 安装GLFW vcpkg install glfw3# 安装GLAD vcpkg install glad1.2 初始测试代码 #include <glad/glad.h> #include <GLFW/glfw3.h> int main() {glfwInit();GLFWwindow* window = g…

西门子S7-1500与S7-200SMART通讯全攻略:从基础配置到远程IO集成

以下是一篇关于西门子S7-1500与S7-200SMART通讯的详细教程&#xff0c;包含远程IO模块的配置方法&#xff0c;适用于工业自动化场景的博客发布&#xff1a; 西门子S7-1500与S7-200SMART通讯全攻略&#xff1a;从基础配置到远程IO集成 一、硬件与软件准备 硬件设备 主站&#x…

前端性能优化的全方位方案【待进一步结合项目】

以下是前端性能优化的全方位方案,结合代码配置和最佳实践,涵盖从代码编写到部署的全流程优化: 一、代码层面优化 1. HTML结构优化 <!-- 语义化标签减少嵌套 --> <header><nav>...</nav> </header> <main><article>...</arti…

前端快速入门——JavaScript变量、控制语句

1.JavaScript 定义 JavaScript 简称 JS. JavaScript 是一种轻量级、解释型、面向对象的脚本语言。它主要被设计用于在网页上实现动态效果&#xff0c;增加用户与网页的交互性。 作为一种客户端脚本语言&#xff0c;JavaScript 可以直接嵌入 HTML&#xff0c;并在浏览器中执行。…

GitHub 趋势日报 (2025年04月01日)

GitHub 趋势日报 (2025年04月01日) 本日报由 TrendForge 系统生成 https://trendforge.devlive.org/ &#x1f4c8; 今日整体趋势 Top 10 排名项目名称项目描述今日获星语言1punkpeye/awesome-mcp-serversA collection of MCP servers.⭐ 3280未指定2th-ch/youtube-musicYouTu…

windows手动添加鼠标右键弹窗快捷方式

此处以添加Git Bash Here为例 一.操作步骤 按 Win R 键打开 运行 对话框&#xff0c;输入 regedit&#xff0c;并按下回车&#xff0c;打开注册表编辑器。 导航到 HKEY_CLASSES_ROOT\Directory\Background\shell。 右键单击 shell&#xff0c;选择 新建 → 项&#xff0c;并…

2025.04.09【Sankey】| 生信数据流可视化精讲

文章目录 引言Sankey图简介R语言中的Sankey图实现安装和加载networkD3包创建Sankey图的数据结构创建Sankey图绘制Sankey图 结论 引言 在生物信息学领域&#xff0c;数据可视化是理解和分析复杂数据集的关键工具之一。今天&#xff0c;我们将深入探讨一种特别适用于展示数据流动…

GD32H759IMT6 Cortex-M7 OpenHarmony轻量系统移植——4.1版本升级到5.0.3

笔者在去年利用国庆时间&#xff0c;将Cortex-M7 的国产厂商兆易创新GD32H459移植OpenHarmony轻量系统&#xff0c;但是适配不太完善——只能选择liteos-m接管中断。这样导致使用中断非常麻烦。于是笔者最近将接管中断模式修改为不接管&#xff0c;这样可以方便的使用gd32提供的…

【算法竞赛】树上最长公共路径前缀(蓝桥杯2024真题·团建·超详细解析)

目录 一、题目 二、思路 1. 问题转化&#xff1a;同步DFS走树 2. 优化&#xff1a;同步DFS匹配 3. 状态设计&#xff1a;dfs参数含义 4. 匹配过程&#xff1a;用 map 建立权值索引 5. 终止条件&#xff1a;无法匹配则更新答案 6. 总结 三、完整代码 四、知识点总…

开源免费虚拟化平台PVE软件定义网络

一、PVE SDN&#xff08;Software Defined Networking&#xff09;原理与使用逻辑 SDN&#xff08;软件定义网络&#xff09; 是一种将网络控制逻辑从传统交换机、路由器中分离出来的技术&#xff0c;使得网络可以通过软件集中管理和自动化配置。 Proxmox VE&#xff08;PVE&…

mysql 8.0.41下载安装教程(附安装包)mysql 8.0.41图文详细安装教程

文章目录 前言一、mysql 8.0.41 简介二、安装前准备三、MySQL 8.0 安装流程解析1.解压安装包2.启动安装程序3.选择安装类型4.选择安装组件5.开始安装6.配置设置&#xff08;部分步骤&#xff09;7.设置数据库密码8.完成安装配置9.配置环境变量&#xff1a;10.验证安装&#xff…

JAVA基础八股复习

1.局部变量一般存放在栈中&#xff0c;成员变量一般存放在堆中 2.什么是多态&#xff1f;谈谈对多态的理解&#xff1f; 在面向对象语言中&#xff0c;接口的多种不同的实现方式即为多态。用白话来说&#xff0c;就是多个对象调用同一个方法&#xff0c;得到不同的结果。 多态中…

10:00开始面试,10:08就出来了,问的问题有点变态。。。

从小厂出来&#xff0c;没想到在另一家公司又寄了。 到这家公司开始上班&#xff0c;加班是每天必不可少的&#xff0c;看在钱给的比较多的份上&#xff0c;就不太计较了。没想到8月一纸通知&#xff0c;所有人不准加班&#xff0c;加班费不仅没有了&#xff0c;薪资还要降40%…

k8s核心资源对象一(入门到精通)

本文将深入探讨Kubernetes中的核心资源对象&#xff0c;包括Pod、Deployment、Service、Ingress、ConfigMap和Secret&#xff0c;详细解析其概念、功能以及实际应用场景&#xff0c;帮助读者全面掌握这些关键组件的使用方法。 一、pod 1 pod概念 k8s最小调度单元&#xff0c;…

《Sqoop 快速上手:安装 + 测试实战》

推荐原文 见&#xff1a;http://docs.xupengboo.top/bigdata/di/sqoop.html Sqoop&#xff08;SQL-to-Hadoop&#xff09; 是 Apache 开源的工具&#xff0c;专门用于在 Hadoop 生态系统&#xff08;如 HDFS、Hive、HBase&#xff09; 和 关系型数据库&#xff08;如 MySQL、O…