多种方法查看Oracle SQL执行计划
2013-04-20 21:26
639 查看
一.在线查看执行计划表
1.explain plan
for
select * from ......
2.select * from table(DBMS_XPLAN.Display);
二.使用oracle第三方工具:
plsql developer(F5)
Toad (Ctrl+E)
三.使用SQL*PLUS:
1.sqlplus / as sysdba
set autotrace on;
or
set autotrace trace explain;
or
set autotrace trace explain statistics;
2.执行sql
四.sql trace
1.alter session set sql_trace=on;
2.执行sql
3.alter session set sql_trace=off;
4.查看相应的sql trace文件。
五.诊断事件(10046)
1.alter session set events '10046 trace name context forever,level 12';
2.执行sql
3.alter session set events '10046 trace name context off';
3.查看相应的sql trace文件。
可利用TKPROF工具查看跟踪文件
TKPROF是一个用于分析oracle跟踪文件并且产生一个更加清晰合理的输出结果的可执行工具。如果一个系统的执行效率比较低,一个比较好 的方法是跟踪用户的会话并且使用TKPROF工具的排序功能格式化输出,从而找出有问题的SQL语句。
TKPROF命令后面的选项及输出文件各个列的含义在这里不做详细的介绍。google一下就会有很多资料。
下面简单描述一下TKPROF工具的使用步骤:
1、在session级别设置sql_trace=true
sys@ORCL>alter session set sql_trace=true;
Sessionaltered.
如果要在pl/sql中对session级别设置true,可以使用dbms_system这个包:
sys@ORCL> exec dbms_system.set_sql_trace_in_session(sid,serial#,true);
2、指定一下生成的trace文件的名字,便于查找:
sys@ORCL>alter session set tracefile_identifier='yourname';
3、执行SQL语句。
4、利用TKPROF工具格式化输出的trace 文件:
[oracle@q1test01~] $tkprof/oracle/admin/orcl/udump/orcl_ora_10266_yourname.trc/oracle/yourname.txtexplain=user/pwdaggregate=yessys=nowaits=yessort=fchela
5、查看生成的文件再设置sql_trace=false:
sys@ORCL>alter session set sql_trace=false;
1.explain plan
for
select * from ......
2.select * from table(DBMS_XPLAN.Display);
二.使用oracle第三方工具:
plsql developer(F5)
Toad (Ctrl+E)
三.使用SQL*PLUS:
1.sqlplus / as sysdba
set autotrace on;
or
set autotrace trace explain;
or
set autotrace trace explain statistics;
2.执行sql
四.sql trace
1.alter session set sql_trace=on;
2.执行sql
3.alter session set sql_trace=off;
4.查看相应的sql trace文件。
五.诊断事件(10046)
1.alter session set events '10046 trace name context forever,level 12';
2.执行sql
3.alter session set events '10046 trace name context off';
3.查看相应的sql trace文件。
可利用TKPROF工具查看跟踪文件
TKPROF是一个用于分析oracle跟踪文件并且产生一个更加清晰合理的输出结果的可执行工具。如果一个系统的执行效率比较低,一个比较好 的方法是跟踪用户的会话并且使用TKPROF工具的排序功能格式化输出,从而找出有问题的SQL语句。
TKPROF命令后面的选项及输出文件各个列的含义在这里不做详细的介绍。google一下就会有很多资料。
下面简单描述一下TKPROF工具的使用步骤:
1、在session级别设置sql_trace=true
sys@ORCL>alter session set sql_trace=true;
Sessionaltered.
如果要在pl/sql中对session级别设置true,可以使用dbms_system这个包:
sys@ORCL> exec dbms_system.set_sql_trace_in_session(sid,serial#,true);
2、指定一下生成的trace文件的名字,便于查找:
sys@ORCL>alter session set tracefile_identifier='yourname';
3、执行SQL语句。
4、利用TKPROF工具格式化输出的trace 文件:
[oracle@q1test01~] $tkprof/oracle/admin/orcl/udump/orcl_ora_10266_yourname.trc/oracle/yourname.txtexplain=user/pwdaggregate=yessys=nowaits=yessort=fchela
5、查看生成的文件再设置sql_trace=false:
sys@ORCL>alter session set sql_trace=false;
相关文章推荐
- [转] 多种方法查看Oracle SQL执行计划
- Oracle之SQL优化专题01-查看SQL执行计划的方法
- ORACLE中查看SQL执行计划的方法
- [Oracle] Sql 优化系列--查看Oracle执行计划的方法
- 查看Oracle执行计划的几种方法 / oracle中DateTime类型的字段,建立索引后,查寻时索引如何生效?/ oracle 中sql语句怎么加多个强制索引
- 【总结】Oracle查看SQL执行计划和运行效率指标的方法
- ORACLE中查看SQL执行计划的几种方法
- Oracle查看SQL执行计划的方式
- Oracle 如何根据动态性能视图来查看某条SQL语句的执行计划
- 如何查看oracle sql执行计划
- 查看Oracle执行计划方法
- Oracle查看SQL执行计划的方式
- Oracle Study--Oracle SQL执行计划查看(MindMap)
- 在Oracle中启用AutoTrace查看SQL执行计划
- 查看Oracle执行计划的几种常用方法-系列1 .
- 查看ORACLE执行计划的几种常用方法
- 在Oracle的SQL*PLUS中启用AutoTrace查看SQL执行计划和统计信息
- Oracle Study--Oracle SQL执行计划查看(MindMap)