执行计划
2016-02-27 23:12
351 查看
oracle用来执行目标sql语句的这些步骤的组合就被成为执行计划
查看执行计划:
explain plan for
dbms_xplan
sqlplus中autotrace的开关
10046事件
10053事件
AWR报告
一些个性化的脚本
在oracle数据库中判断执行计划是否准确,就是看目标sql是否真正被执行过,真正执行过的sql所对因的执行计划就是准的,泛指有可能不准。
查看执行计划的顺序:可以根据tom书中所述,画成一个执行计划树
oracle最常见的执行计划
与表相关的执行计划:全表扫描和ROWID扫描,table access full,table access by user rowid,table access by index rowid,table access by user rowid
与Btree相关的执行计划:index unique scan,index fast full scan,index skip scan,
与位图索引相关的执行计划;BITMAP INDEX SINGLE VALUE ,BITMAP CONVERSION TO ROWIDS,BITMAP INDEX RANGE SCAN,BITMAP INDEX FULL SCAN
BITMAP INDEX FAST FULL SCAN,BITMAP OR,BITMAP AND ,BITMAP MINUS
与表相关的执行计划:SORT IN,MERGE JOIN,NESTED LOOPS,HASH JOIN,HASH JOIN ANTI,MERGE JOIN ANTI,HASH JOIN ANTI ,HASH JOIN SEMI,MRGE JOIN SEMI
NESTED LOOPS SEMI
其他典型的执行计划:and-equal(INDEX MERGE),INDEX JOIN,VIEW, FILTER, SORT, SORT AGGREGATE,SORT UNIQUE,SORT JOIN,SORT GROUP BY ,SORT ORDER BY
BUFFER SORT, UNION ,UNION ALL, CONCAT, CONNECT BY
oracle稳固执行计划
oracle 10g中sql profile是oralce9i中stored outline的进化。
优点:更容易生成,更改和控制 在对SQL语句的支持上做的更好
目的:锁定或者稳定执行计划
在不能修改目标SQL的sql文本情况下使目标sql语句按指定的执行计划运行
SQL profile有两种类型:一种是Automatic类型,一种是manual类型
automatic类型的SQL profile并不能完全起到稳固目标SQL的执行计划的作用,虽然它可以确定可以用来调整执行计划
使用SPM来稳定执行计划
SQL PROFILE实际上只是一种亡羊补牢,被动的技术手段,应用在那些执行计划已经发生了不好的变更的SQL上。
SPM是一种主动的稳定执行计划手段,能够保证被验证过的执行计划才会被启用
查看执行计划:
explain plan for
dbms_xplan
sqlplus中autotrace的开关
10046事件
10053事件
AWR报告
一些个性化的脚本
在oracle数据库中判断执行计划是否准确,就是看目标sql是否真正被执行过,真正执行过的sql所对因的执行计划就是准的,泛指有可能不准。
查看执行计划的顺序:可以根据tom书中所述,画成一个执行计划树
oracle最常见的执行计划
与表相关的执行计划:全表扫描和ROWID扫描,table access full,table access by user rowid,table access by index rowid,table access by user rowid
与Btree相关的执行计划:index unique scan,index fast full scan,index skip scan,
与位图索引相关的执行计划;BITMAP INDEX SINGLE VALUE ,BITMAP CONVERSION TO ROWIDS,BITMAP INDEX RANGE SCAN,BITMAP INDEX FULL SCAN
BITMAP INDEX FAST FULL SCAN,BITMAP OR,BITMAP AND ,BITMAP MINUS
与表相关的执行计划:SORT IN,MERGE JOIN,NESTED LOOPS,HASH JOIN,HASH JOIN ANTI,MERGE JOIN ANTI,HASH JOIN ANTI ,HASH JOIN SEMI,MRGE JOIN SEMI
NESTED LOOPS SEMI
其他典型的执行计划:and-equal(INDEX MERGE),INDEX JOIN,VIEW, FILTER, SORT, SORT AGGREGATE,SORT UNIQUE,SORT JOIN,SORT GROUP BY ,SORT ORDER BY
BUFFER SORT, UNION ,UNION ALL, CONCAT, CONNECT BY
oracle稳固执行计划
oracle 10g中sql profile是oralce9i中stored outline的进化。
优点:更容易生成,更改和控制 在对SQL语句的支持上做的更好
目的:锁定或者稳定执行计划
在不能修改目标SQL的sql文本情况下使目标sql语句按指定的执行计划运行
SQL profile有两种类型:一种是Automatic类型,一种是manual类型
automatic类型的SQL profile并不能完全起到稳固目标SQL的执行计划的作用,虽然它可以确定可以用来调整执行计划
使用SPM来稳定执行计划
SQL PROFILE实际上只是一种亡羊补牢,被动的技术手段,应用在那些执行计划已经发生了不好的变更的SQL上。
SPM是一种主动的稳定执行计划手段,能够保证被验证过的执行计划才会被启用
相关文章推荐
- CSU 1601: War
- RHEL/CentOS/Fedora各种源(EPEL、Remi、RPMForge、RPMFusion)配置
- WebSphere
- ffmpeg转码速度控制方法(笔记)
- Java Servlet(一):创建工程(jdk7+tomcat7+eclipse)
- NSArray的使用
- 查看ORACLE的实际执行计划
- Quartz 2D
- Demo13:div实现太极旋转
- 同一用户不同页面共享的三种方法
- cordova Refused to connect to xxxxx -- 白名单拒绝发送网络请求
- js 倒计时功能
- unity发布网页版(内嵌网页)
- iOS 纯代码写ColletionView
- Reverse Linked List II
- 想法:
- html之radio是否被选中的判断------radio只是input的type属性
- Error: Error parsing D:\Android\sdk\system-images\android-23\android-wear\x86\devices.xml
- 【PAT】1037. 在霍格沃茨找零钱(20)
- mysql ERROR 1045 (28000) 解决方法