中易网

如何查看执行计划

答案:2  悬赏:20  
解决时间 2021-02-27 18:10
如何查看执行计划
最佳答案
一.在线查看执行计划表
  如果PLAN_TABLE表不存在,执行$ORACLE_HOME/rdbms/admin/utlxplan.sql创建plan_table表。
  1.explain plan
  for
  select * from ......
  2.select * from table(DBMS_XPLAN.Display);
  二.使用oracle第三方工具:
  plsql developer(F5)
  Toad (Ctrl+E)
  三.使用SQL*PLUS:
  如果PLAN_TABLE表不存在,执行$ORACLE_HOME/rdbms/admin/utlxplan.sql创建plan_table表。
  如果PLUSTRACE角色不存在,执行
  $ORACLE_HOME/sqlplus/admin/plustrce.sql
  1.sqlplus / as sysdba
  set autotrace on;
  关于Autotrace几个常用选项的说明:
  SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式
  SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显示优化器执行路径报告
  SET AUTOTRACE ON STATISTICS -- 只显示执行统计信息
  SET AUTOTRACE ON ----------------- 包含执行计划和统计信息
  SET AUTOTRACE TRACEONLY ------ 同set autotrace on,但是不显示查询
2.执行sql
  四.sql trace
  1.alter session set sql_trace=true;
  2.执行sql
  3.alter session set sql_trace=false;
  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;
  Session altered.
  如果要在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 trace file_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;
全部回答
首先 :在pl/sql developer中写好一段sql代码,按f5,或者点击“执行执行计划”图标,pl/sql developer会自动打开执行计划窗口,显示该sql的执行计划。 其次:可以看到窗口上方是sql语句,下方显示执行计划表格。表格的列主要包含描述、用户、对象、成本花费、io开销等,表格,当然表格列还可以自定义。表格的行包含了查询逻辑的执行顺序和各个步骤信息。 再次:执行计划表格内容的执行顺序是:按照从左至右,从上至下的步骤执行,具体是指执行计划按照层次逐步缩进,从左至右看,缩进最多的那一步最先执行,如果缩进量相同,则按照从上而下的方法判断执行顺序。 通过查看执行计划表格的cost列,即成本花费能够知道哪个步骤花费的成本高,通过查看执行计划表格的行中的objectname列,能够知道是否使用到表中的索引。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
川味小吃地址有知道的么?有点事想过去
王力宏是怎么出道的?怎么被发掘的?越详细越好
衡阳有钱人靠什么挣钱
陕西秦商实业有限公司在什么地方啊,我要过去
win7安装osx出错了!怎么办?
如何查询QQ在哪个手机上线的
口袋妖怪2016中的闪种向日花怪怎么得,在哪个
兴富家具公司怎么去啊,有知道地址的么
华为手机恢复出厂设置 手机型号g620s
Intel赛扬双核 E3200 散和Intel奔腾双核 E218
深圳中国移动,有什么4G套餐适合学生的吗,流
中国建设银行南宁东宝路支行这个地址在什么地
远航三一教育(世纪城分部)地址在哪,我要去那
想学计算机编程考哪个大学?
"一头公牛和一头母牛"猜三个字/
推荐资讯
2016133期双色球开将号
魔兽世界萨满德鲁伊牧师哪个比较好
从中侨学院到上海浦东新区上南路德邦物流怎么
手机怎么能破解别人的wifi密码
UG导出CAD,只有XY平面的图形其他都不显示。
带菜字的可爱点的网名
任何一个矩阵都有迹么
沛纳海香港与大陆价格价格相差多少?
《非诚勿扰》片头长镜头跟踪一个光脊背女人的
画江湖之不良人第二部是画江湖之灵主吗?
煮面条用什么做配料
即使明知道不适合,还是会继续坚持下去,就算
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?