使用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 ...
随机推荐
- js 实现路由功能
class Router { constructor() { this.routes = [] } handle(pattern, handler) { this.routes.push({ patt ...
- Delphi 组件渐进开发浅谈(二)——双简合璧
2.双简合璧2.1.带有T[x]Label的T[x]Edit组件 请允许我用[x]的书写方式来表示不同的对象.因为随后将大量提及TLabeledEdit与TTntLabeledEdit.TCustom ...
- Distributed transactions in Spring, with and without XA
While it's common to use the Java Transaction API and the XA protocol for distributed transactions i ...
- 第184天:js创建对象的几种方式总结
面向对象编程(OOP)的特点: 抽象:抓住核心问题 封装:只能通过对象来访问方法 继承:从已有的对象下继承出新的对象 多态:多对象的不同形态 一.创建对象的几种方式 javascript 创建对象简单 ...
- ZOJ2725_Digital Deletions
题意是这样的,一开始给你一串数字,两个人轮流操作,操作可以分为两种. 1.每次修改一个数字,使其变为一个小于当前的非负数. 2.移除中间的某一个0以及0右边的所有数字. 使得所有数字消失的游戏者获胜. ...
- BZOJ 1923 外星千足虫(bitset优化线性基)
题意:给出m次n个千足虫的足数信息,确定在第几次测试后可以确定每个千足虫的来历. 我们可以观察到每个测试结果具有异或后依然成立的性质,于是实际上我们只需要从头到尾确定有n个线性相关的向量是在哪一个测试 ...
- noip模拟题《序》sort
[问题背景] zhx 给他的妹子们排序.[问题描述] zhx有N个妹子,他对第i个妹子的好感度为ai, 且所有ai两两不相等.现在N个妹子随意站成一 排,他要将她们根据好感度从小到 ...
- bzoj3477[Usaco2014 Mar]Sabotage
题意 给出一个长为n的正整数序列(n<=1e5),要求选出一个非空前缀和一个非空后缀(这两段不能够加起来组成整个序列),使得这个前缀和后缀中的所有数字一起求平均数的结果最小 分析 最大/最小化平 ...
- 【BZOJ】2956:模积和
Time Limit: 10 Sec Memory Limit: 128 MB Description 求∑∑((n mod i)*(m mod j))其中1<=i<=n,1<=j ...
- [ACM]Codeforces Round #534 (Div. 2)
A. Splitting into digits Vasya has his favourite number n. He wants to split it to some non-zero dig ...