V$SQL_PLAN视图提供了一种方法,可用于检查仍位于库高速缓存的游标的执行计划。此视图中的信息与 PLAN_TABLE 视图中的信息非常类似。但是,EXPLAIN PLAN 显示的是执行相应语句时可以使用的理论,而V$SQL_PLAN 包含实际使用的计划。通过 EXPLAIN PLAN 语句获取的执行计划与用来执行游标的执行计划可能有所不同。原因在于,也许已经用不同的会话参数值编译了游标。

V$SQL_PLAN 显示一个游标的计划,并非与一个 SQL 语句相关联的所有游标的计划。区别在于,一个 SQL 语句可能包含多个与其相关联的游标,而每个游标都由 CHILD_NUMBER 标识。例如,如果某语句引用的对象在不同方案中,那么,不同用户执行此同一语句时所关联的游标会不同。同样,不同的提示会导致不同的游标。V$SQL_PLAN 表可用于查看同一语句不同子游标的不同计划。

注:另一有用的视图是 V$SQL_PLAN_STATISTICS,此视图为每个缓存的游标的执行计划中的每项操作提供执行统计信息。另外,V$SQL_PLAN_STATISTICS_ALL 视图将 V$SQL_PLAN 中的信息与 V$SQL_PLAN_STATISTICS 和 V$SQL_WORKAREA 中的执行统计信息连接在一起。

V$SQL_PLAN 的列

此视图几乎包含 PLAN_TABLE 中的所有列,还包含其它一些列。与 PLAN_TABLE 共有的列具有相同的值:

ADDRESS

HASH_VALUE

可以使用 ADDRESS 和HASH_VALUE 列与 V$SQLAREA 联接,以便添加特定于游标的信息。

可以使用 ADDRESS、HASH_VALUE 和 CHILD_NUMBER 列与 V$SQL 联接,以便添加特定于子游标的信息。

PLAN_HASH VALUE 列是游标的 SQL 计划的数字表达形式。通过比较两个计划的 PLAN_HASH_VALUE,可以轻松地确定这两个计划是否相同(而不必逐行比较这两个计划)。

注:从 Oracle Database 10g 起,V$SESSION 中的 SQL_HASH_VALUE 被 SQL_ID 取代,在许多其它V$ 视图中都可以检索出后者。SQL_HASH_VALUE 是 32 位的值,在存储 AWR 数据的大型资料档案库中,使用它不足以唯一地标识对象。SQL_ID 是 64 位的散列值,唯一性更高,其中的后 32 位为 SQL_HASH_VALUE。通常用字符串表示该值,以便简化管理。

摘自:http://www.databi.cn/article-62-1.html

Oracle 性能调优之:使用 V$SQL_PLAN 视图查询内存中的执行计划的更多相关文章

  1. Oracle 性能调优 SQL_TRACE

    思维导图 Oracle优化10-SQL_TRACE解读 Oracle优化11-10046事件 概述 当我们想了解一条SQL或者是PL/SQL包的运行情况时,特别是当他们的性能非常差时,比如有的时候看起 ...

  2. [Spark性能调优] 第三章 : Spark 2.1.0 中 Sort-Based Shuffle 产生的内幕

    本課主題 Sorted-Based Shuffle 的诞生和介绍 Shuffle 中六大令人费解的问题 Sorted-Based Shuffle 的排序和源码鉴赏 Shuffle 在运行时的内存管理 ...

  3. [Spark性能调优] 源码补充 : Spark 2.1.X 中 Unified 和 Static MemoryManager

    本课主题 Static MemoryManager 的源码鉴赏 Unified MemoryManager 的源码鉴赏 引言 从源码的角度了解 Spark 内存管理是怎么设计的,从而知道应该配置那个参 ...

  4. [转]oracle性能调优之--Oracle 10g AWR 配置

    一.ASH和AWR的故事 1.1 关于ASH 我们都知道,用户在ORACLE数据库中执行操作时,必然要创建相应的连接和会话,其中,所有当前的会话信息都保存在动态性能视图V$SESSION中,通过该视图 ...

  5. Oracle性能调优之物化视图用法简介

    目录 一.物化视图简介 二.实践:创建物化视图 一.物化视图简介 物化视图分类 物化视图分类,物化视图语法和as后面的sql分为: (1) 基于主键的物化视图(主键物化视图) (2)基于Rowid的物 ...

  6. Oracle性能调优之虚拟索引用法简介

    本博客记录一下Oracle虚拟索引的用法,虚拟索引是定义在数据字典中的伪索引,可以说是伪列,没有修改的索引字段的.虚拟索引的目的模拟索引,不会增加存储空间的使用,有了虚拟索引,开发者使用执行计划的时候 ...

  7. Oracle 性能调优 10053事件

    思维导图 10053事件概述 我们在查看一条SQL语句的执行计划时,只看到了CBO最终告诉我们的执行计划结果,但是我们并不知道CBO为何要这样做. 特别是当执行计划明显失真时,我们特别想搞清楚为什么C ...

  8. Oracle 性能调优案例(代码级别)

    业务案例一: 业务:千万记录表中查询出50条符合条件的记录. 现象:oracle部署时跨机器,业务取得数据耗时10ms.造成业务性能不达标. 为了突出主题,对于异常分支,均已省略. 对于通常写法, o ...

  9. 【性能调优】一次关于慢查询及FGC频繁的调优经历

    以下来分享一个关于MySQL数据库慢查询和FGC频繁的性能案例. 一.系统架构 一个简单的dubbo服务,服务提供者提供接口,并且提供接口的实现,提供方注册服务到Zookeeper注册中心,然后消费者 ...

随机推荐

  1. 在 php 中使用 strace、gdb、tcpdump 调试工具

    转自:http://www.syyong.com/php/Using-strace-GDB-and-tcpdump-debugging-tools-in-PHP.html 在 php 中我们最常使用调 ...

  2. spark streaming 使用geoIP解析IP

    1.首先将GEOIP放到服务器上,如,/opt/db/geo/GeoLite2-City.mmdb 2.新建scala sbt工程,测试是否可以顺利解析 import java.io.Fileimpo ...

  3. Tensorflow学习笔记一

    今天开始正式学习Tensorflow, 首先从源码开始, 装好了CentOS 7 X64, 并且安装了桌面版本, 计划能够构建Tensorflow成功 首先从Github从Fork了一个版本到我的Gi ...

  4. IOS-网络(文件上传)

    // // ViewController.m // IOS_0206_文件上传 // // Created by ma c on 16/2/6. // Copyright © 2016年 博文科技. ...

  5. 微信小程序navigateTo /redirectTo/navigateBack 三者区别

    navigateTo 不会将旧页面出栈: redirectTo 会将旧页面出栈,再将需要跳转到的页面入栈: navigateBack 则是将页面栈最后一个元素出栈,因此倒数第二个元素会成为最后一个元素 ...

  6. SGU 138. Games of Chess 构造 难度:2

    138. Games of Chess time limit per test: 0.25 sec. memory limit per test: 4096 KB N friends gathered ...

  7. bzoj3393

    题解: spfa 允许多次进队 代码: #include<bits/stdc++.h> using namespace std; struct que{int x,y,dire,dist; ...

  8. DateTime和字符串转换问题

    DateTime和string之间的相互转换经常碰到,可就这么简单的一个转换其中也有些需要注意的地方. static void Main(string[] args) { string format ...

  9. 201621123010《Java程序设计》第3周学习总结

    1.本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.尝试学会使用思维导图将这些碎片化的概念.知识点组织起来.请使用工具画出本周学习到的知识点及知识点之间的联系.步骤如下: 1.1 写出你认 ...

  10. L203 词汇题

    Conditions for the growth of this plant are optimum in early summer.we will live as free people, not ...