【转 oracle 监控执行计划突然变化】教程文章相关的互联网学习教程文章

Oracle 执行计划(Explain Plan)

命令解释1SET AUTOTRACE OFF此为默认值,即关闭Autotrace 2SET AUTOTRACE ON EXPLAIN只显示执行计划3SET AUTOTRACE ON STATISTICS只显示执行的统计信息4SET AUTOTRACE ON包含2,3两项内容5SET AUTOTRACE TRACEONLY与ON相似,但不显示语句的执行结果1.2 使用SQL 在执行的sql前面加上EXPLAIN PLAN FORSQL> EXPLAIN PLAN FOR SELECT * FROM EMP;已解释。SQL> SELECT plan_table_output FROM TABLE(DBMS_XPLAN.DISPLAY(‘PLAN_TABLE‘))...

ORACLE的执行计划

背景知识: 为了更好的进行下面的内容我们必须了解一些概念性的术语:共享sql语句 为了不重复解析相同的SQL语句(因为解析操作比较费资源,会导致性能下降),在第一次解析之后,ORACLE将SQL语句及解析后得到的执行计划存放在内存中。这块位于系统全局区域SGA(system global area)的共享池(shared buffer pool)中的内存可以被所有的数据库用户共享。因此,当你执行一个SQL语句(有时被称为一个游标)时,如果该语句和之前的执...

oracle执行计划

1.SET AUTOTRACE OFF 没有执行计划,是oracle的默认情况; 2.SET AUTOTRACE ON EXPLAIN 只有执行计划,没有统计部分; 3.SET AUTOTRACE ON STATISTICS 只有sql语句执行的统计部分无执行计划; 4.SET AUTOTRACE ON 既有执行计划又有sql语句执行的统计部分; 5.SET AUTOTRACE TRACEONLY 跟SET AUTOTRACE ON一样,但是没有sql执行数据的输出;oracle执行计划标签:本文系统来源:http://www.cnblogs.com/lele88lala/p/4677401....

查看Oracle执行计划【图】

1、PL/SQL解释计划窗口 优点:方面 缺点:看到信息有限 2、explain_plan for 针对某个句子优化较方便 3、sqlplus Sqlplus里输入命令: set autotrace onselect * from emp; 数据显示出来后,跟着执行计划: 这个语句的优点就是它的缺点,这样在用该方法查看执行时间较长的sql语句时,需要等待该语句执行成功后,才返回执行计划,使优化的周期大大增长。 如果不想执行语句而只是想得到执行计划可以采用: set autotrace traceonly 如...

Oracle 学习之性能优化(五)执行计划【代码】

三、SQL_TRACE SQL_TRACE是Oracle的一个非常强大的工具。打开SQL_TRACE就可以逐步捕获任何一个会话的数据库活动,或者捕获整个数据库的活动,并将数据库活动记录成跟踪文件。每次使用完之后需要关闭跟踪,否则会降低系统的性能。跟踪整个数据库实例。 只需要简单的修改参数文件(pfile/spfile)参数 SQL_TRACE = TRUE ,在全局启用SQL_TRACE会导致所有进程的活动被跟踪,包括后台进程及所有用户进程,这样也会数据库导致性能下降比较...

oracle执行计划翻译

MISSES IN library cache during parse:1 翻译:发生在解析的硬解析数量为1,表示硬解析 MISSES IN library cache during parse:0 翻译:发生在解析的硬解析数量为0,表示没有硬解析,即为软件解析,一般发生在绑定变量的sql语句执行的时候 注: 1、硬解析:首先是语法分析,然后是语义分析,其次是sql执行计划,最后是执行语句。 2、软解析:在oracle的共享池中搜到之前执行成功的sql语句,直接执行sql语句,跳过了语法分析、语...

查看ORACLE执行计划的几种常用方法【图】

SQL的执行计划实际代表了目标SQL在Oracle数据库内部的具体执行步骤,作为调优,只有知道了优化器选择的执行计划是否为当前情形下最优的执行计划,才能够知道下一步往什么方向。 执行计划的定义:执行目标SQL的所有步骤的组合。 我们首先列出查看执行计划的一些常用方法: 1. explain plan命令 PL/SQL Developer中通过快捷键F5就可以查看目标SQL的执行计划了。但其实按下F5后,实际后台调用的就是explain plan命令,相当于封装了...

ORACLE 执行计划

有关oracle 执行计划几个不错的连接执行计划的一些概念介绍:http://database.51cto.com/art/200611/34273.htm执行计划的例子:http://www.oracleblog.org/working-case/why-not-take-hash-join/执行计划的学习:http://wenku.baidu.com/view/aa01ba09581b6bd97f19eae9.htmlORACLE 执行计划标签:本文系统来源:http://www.cnblogs.com/adolfmc/p/4796268.html

Oracle执行计划的查看【代码】

一个系统在刚开始的时候,由于数据库中数据量不大,开发人员的主要精力都在业务与功能实现上。系统完成部署上线后随着时间的累积,每个表中的数据都在不断增长,我们往往会发现系统越来越慢,这可能是程序设计不合理,也可能是代码质量不高,也可能是业务流程问题,但是作为DBA或者负责数据库调优的工程师更应该想想是否是数据库方面的问题。数据库问题有很多种,作为开发人员主要关注SQL语句的合理性,至于数据库的其它问题可以暂...

oracle里的执行计划-查看

内容主要来自看书学习的笔记,如下记录了常见查询执行计划的方法。 2.2 如何查看执行计划1.explain plan2.dbms_xplan包3.autotrace4.10046事件5.10053事件6.awr/statspack报告(@?/rdbms/admin/awrsqrpt)7.脚本(display_cursor_9i.sql)2.2.1 explain planexplain plan for sqlselect * from table(dbms_xplan.display);SQL> explain plan for select * from emp;已解释。SQL> select * from table(dbms_xplan.display);PLAN_TABLE...

ORACLE 获取执行计划的方法

一.获取执行计划的6种方法(详细步骤已经在每个例子的开头注释部分说明了):   1. explain plan for获取;   2. set autotrace on ;   3. statistics_level=all;   4. 通过dbms_xplan.display_cursor输入sql_id参数直接获取   5. 10046 trace跟踪   6. awrsqrpt.sql 二.适用场合分析   1.如果某SQL执行非常长时间才会出结果,甚至慢到返回不了结果,这时候看执行计划就只能用方法1; ...

oracle-常见的执行计划(一)【代码】

TABLE ACCESS BY INDEX ROWID select empno,ename from scott.emp where empno=7521select *from table(dbms_xplan.display_cursor(null,null))SQL_ID 69nxfycyppq7m, child number 0 ------------------------------------- select empno,ename from scott.emp where empno=7521Plan hash value: 2949544139-------------------------------------------------------------------------------------- | Id | Operation ...

Oracle获取执行计划方法

6种方法 1. explain plan for获取; 2. set autotrace on ; 3. statistics_level=all; 4. 通过dbms_xplan.display_cursor输入sql_id参数直接获取 5. 10046 trace跟踪6. awrsqrpt.sql适用场合分析 1.如果某SQL执行非常长时间才会出结果,甚至慢到返回不了结果,这时候看执行计划就只能用方法1; 2.跟踪某条SQL最简单的方法是方法1,其次就是方法2,方法2要执行; 3.如果想观察到某条SQL有多条执行计划的情况,只...

【Oracle 优化器】自适应执行计划(Adaptive Execution Plans)【代码】

概述 自适应连接方法AJM AJM例 AJM的处理流程自适应并行分配方法APDM APDM例 APDM的处理流程 关于分配方法总结 参考概述我们知道在12c之前的版本,虽然有ACS、CFB等功能通过在SQL文执行时收集信息,来改善SQL文再次执行时的执行计划,但是在SQL文第一次执行时,只能根据统计信息做成的执行计划执行SQL,在执行过程中并不能改变。 如果统计信息不准确,访问的数据行数非常大并且选择的执行计划不是最优时,在SQL文第一次执行时可能...

Oracle执行计划详解

二.oracle访问数据的存取方法 1) 全表扫描(Full Table Scans, FTS) 2) 通过ROWID的表存取(Table Access by ROWID或rowid lookup) 3)索引扫描(Index Scan或index lookup)有4种类型的索引扫描:  (1) 索引唯一扫描(index unique scan)  (2) 索引范围扫描(index range scan) 在非唯一索引上都使用索引范围扫描。使用index rang scan的3种情况:    (a) 在唯一索引列上使...