Oracle优化——如何查看语句的准确的执行计划(explain plan可能不是真实的)
来源:互联网 发布:ubantu装arm linux 编辑:程序博客网 时间:2024/05/16 17:40
参见 Oracle性能优化求生指南。
建虚拟索引HR@ prod> create index test_ix1 on employees4 ( employee_id ) nosegment;HR@ prod> alter session set "_use_nosegment_indexes" = true ;HR@ prod> set autotrace onHR@ prod> select /*oooooooooooo*/ * from employees4 where employee_id = 100 ; EMPLOYEE_ID FIRST_NAME LAST_NAME EMAIL PHONE_NUMBER HIRE_DATE----------- -------------------- ------------------------- ------------------------- -------------------- ---------JOB_ID SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID---------- ---------- -------------- ---------- ------------- 100 Steven King SKING 515.123.4567 17-JUN-03AD_PRES 24000 90Execution Plan----------------------------------------------------------Plan hash value: 499133838------------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |------------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 1 | 133 | 2 (0)| 00:00:01 || 1 | TABLE ACCESS BY INDEX ROWID| EMPLOYEES4 | 1 | 133 | 2 (0)| 00:00:01 ||* 2 | INDEX RANGE SCAN | TEST_IX1 | 1 | | 1 (0)| 00:00:01 |------------------------------------------------------------------------------------------Predicate Information (identified by operation id):--------------------------------------------------- 2 - access("EMPLOYEE_ID"=100)Note----- - dynamic sampling used for this statement (level=2)Statistics---------------------------------------------------------- 0 recursive calls 0 db block gets 5 consistent gets 0 physical reads 0 redo size 1299 bytes sent via SQL*Net to client 523 bytes received via SQL*Net from client 2 SQL*Net roundtrips to/from client 0 sorts (memory) 0 sorts (disk) 1 rows processed查看真正的执行计划,需要知道SQL_ID和CHILD_NUBMER。HR@ prod> conn / as sysdbaConnected.SYS@ prod> select sql_id , child_number from v$sql where sql_text like 'select /*oooooooooooo*/%' ;SQL_ID CHILD_NUMBER------------- ------------gtx1pw85bgqz0 0SYS@ prod> select * from table(dbms_xplan.display_cursor('gtx1pw85bgqz0' , 0 )) ;PLAN_TABLE_OUTPUT------------------------------------------------------------------------------------------------------------------------SQL_ID gtx1pw85bgqz0, child number 0-------------------------------------select /*oooooooooooo*/ * from employees4 where employee_id = 100Plan hash value: 2568047056--------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |--------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | | | 3 (100)| ||* 1 | TABLE ACCESS FULL| EMPLOYEES4 | 1 | 133 | 3 (0)| 00:00:01 |--------------------------------------------------------------------------------Predicate Information (identified by operation id):--------------------------------------------------- 1 - filter("EMPLOYEE_ID"=100)Note----- - dynamic sampling used for this statement (level=2)22 rows selected.实际中并没有索引可以用,Oracle走的是全表扫描。
阅读全文
0 0
- Oracle优化——如何查看语句的准确的执行计划(explain plan可能不是真实的)
- 【Explain Plan】查看SQL的执行计划
- 【Explain Plan】查看SQL的执行计划
- TOAD中查看SQL的执行计划(Explain Plan)
- 分析oracle的执行计划(explain plan)
- 关于Oracle执行计划(Explain Plan)的基础介绍
- ORACLE EXPLAIN PLAN的总结 (优化SQL语句)
- ORACLE EXPLAIN PLAN的总结 (优化SQL语句)
- explain plan获取sql的执行计划
- oracle如何查看sql的真实执行计划
- 关于autotrace和explain plan是否可以反映真实的执行计划
- ORACLE数据库SQL优化--->如何得到真实的执行计划
- 执行计划查看方法(Explain plan)
- mysql explain查看sql语句的执行计划
- Oracle 执行计划(Explain Plan) 说明
- Oracle 执行计划(Explain Plan) 说明
- oracle 执行计划(explain plan)说明
- Oracle 执行计划(Explain Plan) 说明
- 使用wireshark工具理解TCP(1)三次握手
- How to Fix Signature Verification Failures Caused by Invalid PointerToRawData Field Values
- NB-IoT --- 引爆物联网应用?
- 【九度OJ】1200:最大的两个数
- js上传图片进行预览
- Oracle优化——如何查看语句的准确的执行计划(explain plan可能不是真实的)
- js引用问题
- Atitit 如何工作积极的心态积极起来
- Spring Boot学习--打包一个可执行的jar项目
- <android> kotlin体验 说说它的优缺点
- 仿今日头条的滚动指示器的效果
- Atitit 股票选取指南attilax总结
- (四)Building a Dynamic UI with Fragments使用fragment构建动态用户界面
- 线性表的应用2