使用showplan.sql分析sql Performance
在HelloDBA网站找到一个分析sql性能的工具—showplan,记录一下
showplan.sql下载路径:http://www.HelloDBA.com/Download/showplan.zip
使用方式就是调用该工具,传入SQL_ID作为参数。
SQL> @/dmp/showplan.sql 26xj87b2f8g6u
Usage: @showplan <SQL_ID> [Plan Hash Value] [Details: [+](B)inds|SQL (T)ext|(Pee(K)ed Binds|(P)lan|(O)utlines|Pre(D)icate|Plan (L)oading|(W)ait events|(S)tatistics]
Description: Show SQL Plan
SQL ID: 26xj87b2f8g6u
------------- SQL Text --------------
SELECT TRIM("A1"."WORK_ORDER"),COUNT(*) FROM (SELECT DISTINCT "A5"."WORDER_ID" "WORDER_ID" FROM "WIP_WORK_ORDER" "A5","WIP_CODE" "A4" WHERE "A5"."NEXT_PFCD"="A4"."CODE_EXT"(+) AND "A4"."CODE_CATE"(+)='ERPP' AND "A5"."PLAN_ST_DT">= (SELECT TO_CHAR(SYSDATE@!-31,'yyyy-mm-dd') FROM "SYS"."DUAL" "A6") AND "A5"."STATUS"<>'3') "A2","HLBRHIS_SHIP" "A1" WHERE "A1"."CLM_MFDT">= (SELECT TO_CHAR(SYSDATE@!-31,'yyyy-mm-dd') FROM "SYS"."DUAL" "A3") AND "A2"."WORDER_ID"=TRIM("A1"."WORK_ORDER") GROUP BY "A1"."WORK_ORDER"
------------- SQL Plan (Plan Hash Value:564968535; Parsed by schema:) --------------
0 ( )SELECT STATEMENT
1 (0) HASH (GROUP BY) (Cost=4256 Card=65 rows Bytes=0/82)
2 (1) NESTED LOOPS (Cost=4255 Card=133150 rows Bytes=0/82)
3 (2) NESTED LOOPS (Cost=4255 Card=153566712 rows Bytes=0/82)
4 (3) VIEW (Cost=178 Card=102 rows Bytes=0/13)
5 (4) HASH (UNIQUE) (Cost=178 Card=102 rows Bytes=0/60)
6 (5) HASH JOIN (OUTER) (Cost=177 Card=102 rows Bytes=0/240)
7 (6) TABLE ACCESS (BY INDEX ROWID) OF 'WIP_WORK_ORDER' (TABLE) (Cost=171 Card=102 rows Bytes=0/160)
8 (7) INDEX (RANGE SCAN) OF 'IDX1_WIP_WORK_ORDER' (INDEX) (Cost=3 Card=729 rows Bytes=0/)
9 (8) FAST DUAL (Cost=2 Card=1 rows Bytes=0/)
10 (6) INDEX (RANGE SCAN) OF 'PK_WIP_CODE' (INDEX (UNIQUE)) (Cost=6 Card=786 rows Bytes=0/15820)
11 (3) PARTITION RANGE (ITERATOR) (Cost=154 Card=153566712 rows Bytes=0/)
12 (11) INDEX (RANGE SCAN) OF 'HLBRHIS_SHIP_CLM_MFDT' (INDEX) (Cost=154 Card=153566712 rows Bytes=18735104/)
13 (12) FAST DUAL (Cost=2 Card=1 rows Bytes=0/)
14 (2) TABLE ACCESS (BY LOCAL INDEX ROWID) OF 'HLBRHIS_SHIP' (TABLE) (Cost=4077 Card=133150 rows Bytes=377257984/56)
------------- Plan Loading (Plan Hash Value:564968535) --------------
14: TABLE ACCESS BY LOCAL INDEX ROWID ########################################(80.6%)
12: INDEX RANGE SCAN #####(10.01%)
2: NESTED LOOPS #####(9.36%)
1: HASH GROUP BY (.02%)
11: PARTITION RANGE ITERATOR (.01%)
------------- Waits Events (Plan Hash Value:564968535) --------------
ON CPU on PHBLWDA1.HLBRHIS_SHIP(TABLE PARTITION) #########################################(82.08%)
ON CPU on PHBLWDA1.HLBRHIS_SHIP_CLM_MFDT(INDEX PARTITION) ########(16.24%)
db file sequential read on PHBLWDA1.HLBRHIS_SHIP(TABLE PARTITION) #(1.06%)
ON CPU on PHBLWDA1.WIP_WORK_ORDER(TABLE) (.49%)
db file sequential read on PHBLWDA1.HLBRHIS_SHIP_CLM_MFDT(INDEX PARTITION) (.11%)
db file scattered read on PHBLWDA1.HLBRHIS_SHIP(TABLE PARTITION) (.01%)
db file parallel read on PHBLWDA1.HLBRHIS_SHIP(TABLE PARTITION) (0%)
free buffer waits on PHBLWDA1.HLBRHIS_SHIP(TABLE PARTITION) (0%)
------------- Statistics Data (Plan Hash Value:564968535)--------------
Loads: 28
Load Versions: 4
First Load Time: 2017-01-07/13:13:49
Last Load Time: 2017-01-10/01:33:57
User Openings: 0
Parse Calls: 312
Executions: 312
Sorts(Average): 0
Fetches(Average): 2
Disk Reads(Average): 124719.76
Buffer Gets(Average): 11172207.862
Elapsed Time(Average): 202.694 seconds
CPU Time(Average): 200.596 seconds
Run Time Memory(Average): 0M
PGA Size(Maximum): .009G
Temp Space(Maximum): 0G
SQL>
來自於http://www.hellodba.com/reader.php?ID=218&lang=EN的[One single SQL helps you to analyze the performance of a SQL]
使用showplan.sql分析sql Performance的更多相关文章
- 转://使用showplan.sql分析sql Performance
在HelloDBA网站找到一个分析sql性能的工具—showplan,记录一下 showplan.sql下载路径:http://www.HelloDBA.com/Download/showplan.z ...
- MySQL SQL分析(SQL profile)
分析SQL优化运营开销SQL的重要手段.在MySQL数据库.可配置profiling参数启用SQL分析.此参数可以在全局和session水平集.级别则作用于整个MySQL实例,而session级别紧影 ...
- 【转】Microsoft® SQL Server® 2012 Performance Dashboard Reports
http://www.cnblogs.com/shanyou/archive/2013/02/12/2910232.html SQL Server Performance Dashboard Repo ...
- 品味性能之道<六>:图形化SQL分析工具
在上一章里,重点分享了命令行SQL分析工具的使用方法.在本章将重点分享PL/SQL的SQL分析工具. 一.如何打开PL/SQL执行计划 开启PL/SQL这工具,推荐如下方法: 点击 ...
- 品味性能之道<五>:SQL分析工具
一.SQL语句到底是怎么执行的? 想了解SQL语句到底是怎么执行的,那就需要进行SQL语句执行计划分析. 那什么是SQL语句执行计划呢? 就是Oracle服务器执行SQL语句的过程.例如确定是否使用索 ...
- 如何使用SQLPLUS分析SQL语句(查询执行计划跟踪)
方法一:autotrace 1, connect sys/密码 as sysdba,在sys用户下运行$ORACLE_HOME/sqlplus/admin/plustrce.sql这段sql的实际内 ...
- 使用show profiles分析SQL性能
如何查看执行SQL的耗时 使用show profiles分析sql性能. Show profiles是5.0.37之后添加的,要想使用此功能,要确保版本在5.0.37之后. 查看数据库版本 mysql ...
- mysql优化(三)–explain分析sql语句执行效率
mysql优化(三)–explain分析sql语句执行效率 mushu 发布于 11个月前 (06-04) 分类:Mysql 阅读(651) 评论(0) Explain命令在解决数据库性能上是第一推荐 ...
- 【MS SQL】通过执行计划来分析SQL性能
原文:[MS SQL]通过执行计划来分析SQL性能 如何知道一句SQL语句的执行效率呢,只知道下面3种: 1.通过SQL语句执行时磁盘的活动量(IO)信息来分析:SET STATISTICS IO O ...
随机推荐
- 转--- 秒杀多线程第七篇 经典线程同步 互斥量Mutex
阅读本篇之前推荐阅读以下姊妹篇: <秒杀多线程第四篇一个经典的多线程同步问题> <秒杀多线程第五篇经典线程同步关键段CS> <秒杀多线程第六篇经典线程同步事件Event& ...
- day 008 文件操作
08. 万恶之源-⽂文件操作本节主要内容:1. 初识⽂文件操作2. 只读(r, rb)3. 只写(w, wb)4. 追加(a, ab)5. r+读写6. w+写读7. a+写读(追加写读)8. 其他操 ...
- 【转】NHibernate 各种数据库配置
转载自:http://terrylee.cnblogs.com/archive/2006/04/05/367381.html 自己只用了Oracle 可用! 三.常见的配置示例 Castle网站为我们 ...
- Android 解决ScrollView嵌入ListView | GridView | ScrollView显示问题
一.ScrollView中嵌套ListView ScrollView和ListView都是滚动结构,很明显如果在ScrollView中加入ListView,可以预见性的知道,肯定会有显示/滚动的问题, ...
- 【CF625E】Frog Fights(模拟)
[CF625E]Frog Fights(模拟) 题面 CF 洛谷 翻译: 有\(n\)只青蛙在一个被分为了\(m\)等分的圆上,对于每份顺时针依次标号. 初始时每只青蛙所在的位置是\(p_i\),速度 ...
- NOIP2015运输计划题解报告
这题在洛谷上可以找到提交 P2680运输计划 题目背景 公元 2044 年,人类进入了宇宙纪元. 题目描述 L 国有 n 个星球,还有 n-1 条双向航道,每条航道建立在两个星球之间,这 n-1 条航 ...
- 洛谷 P3312 [SDOI2014]数表 解题报告
P3312 [SDOI2014]数表 题目描述 有一张\(N*M\)的数表,其第\(i\)行第\(j\)列(\(1\le i \le n\),\(1 \le j \le m\))的数值为能同时整除\( ...
- Python高级语法总结
1.Python面向对象 创建类 使用class语句来创建一个新类,class之后为类的名称并以冒号结尾,如下实例: class ClassName: '类的帮助信息' #类文档字符串 class_s ...
- BNU-2017.7.4排位赛2总结
链接:https://www.bnuoj.com/v3/contest_show.php?cid=9147#info A题 sort之后交换首尾两个数. B题 for一遍,如果每个数都在对应位置了,输 ...
- 题解【luogu2045 方格取数游戏加强版】
Description 给出一个 \(n*n\) 的矩阵,每一格有一个非负整数 \(A_{i,j}\) ,(\(A_{i,j} <= 1000\))现在从 \((1,1)\) 出发,可以往右或者 ...