设置sqlplus的autotrace 执行计划

初始设置

  1.cd $ORACLE_HOME/rdbms/admin

  2.作为system登录sqlp

  3.运行@utlxplan;

  4.运行 create public synonym plan_table;

  5.运行 grant all on plan_table to public;

  如果愿意,可以吧 grant to public 中的public 替换成某个用户。通过将它设置为public,任何人都可以使用sqlplus进行跟踪,这样就不需要每个用户都安装自己的计划表。还有一种做法就是,在想要使用计划表的模式中,分别执行@utlxplan

下一步是创建并授予plustrace角色 

  1.cd $ORACLE_HOME/rdbms/admin

  2.作为system登录sqlp

  3.运行 @plustrce;

  4.运行 grant plustrace to public

  如果愿意,可以吧grant命令中的public替换成某个用户

控制报告

  你会自动得到一个autotrace报告,其中可能列出sql优化器所用的执行路径,以及语句的执行统计信息。可以通过设置autotrace系统变量可以控制这个报告。

  set autotrace off;  //不生成autotrace报告。这是默认设置。

  set autotrace on explain;  //报告只显示优化器执行路径

  set autotrace on statistice;  //报告只显示sql语句的执行统计信息

  set autotrace on;  //报告既包括优化器执行路径,又包括sql语句的执行统计信息

  set autotrace traceonly;  //这与set autotrace on 类似,但是不显示用户的查询输出

  

时间: 2024-10-01 05:11:59

设置sqlplus的autotrace 执行计划的相关文章

设置sqlplus的autotrace

1.cd D:\Oracle11gR2\product\11.2.0\dbhome_1\rdbms\admin; --[ORACLE_HOME]/rdbms/admin 2.sqlplus system/[email protected]  -- 作为system登录 [email protected]; 4.create public synonym PLAN_TABLE for PLAN_TABLE; 5.grant all on PLAN_TABLE to public; 创建并授予plu

Oracle执行计划——Oracle 如何启用执行计划

AUTOTRACE是一项SQL*Plus功能,自动跟踪为SQL语句生成一个执行计划并且提供与该语句的处理有关的统计.SQL*Plus AUTOTRACE可以用来替代SQL Trace使用,AUTOTRACE的好处是您不必设置跟踪文件的格式,并且它将自动为SQL语句显示执行计划.然而,AUTOTRACE分析和执行语 句:而EXPLAIN PLAN仅分析语句.使用AUTOTRACE不会产生跟踪文件. 1 启用Autotrace 1.1 以sys用户,运行utlxplan.sql sqlplus /

查看执行计划之AUTOTRACE开关

在sqlplus中将autotrace开关打开也能得到目标sql的执行计划,而且,除此之外还能得到目标sql在执行时的资源消耗量,即通过设置AUTOTRACE开关我们可以额外观察到目标sql执行时所耗费的物理读,逻辑读,产生redo的数量已经排序的数量等. (1)在sqlplus的当前session中执行命令set autotrace on,可以在当前session中将autotrace开关完全打开.这样,在这个session中随后执行的所有sql除了显示sql执行结果之外,还会额外显示这些sq

sqlplus 分析执行计划

转载 http://xm-koma.iteye.com/blog/1048451 对于oracle9i,需要手工设置plustrace角色,步骤如下: 1.在SQL>connect sys/密码 as sysdba  (密码为:数据库所在的那台服务器的密码) 在sys用户下运行$ORACLE_HOME/sqlplus/admin/plustrce.sql SQL>@$ORACLE_HOME/sqlplus/admin/plustrce.sql 这段sql的实际内容如下: set echo on

如何使用SQLPLUS分析SQL语句(查询执行计划跟踪)

方法一:autotrace 1,  connect sys/密码 as sysdba,在sys用户下运行$ORACLE_HOME/sqlplus/admin/plustrce.sql这段sql的实际内容如下:set echo ondrop role plustrace;create role plustrace;grant select  on v_$sesstat to plustrace;grant select on v_$statname to plustrace;grant selec

开启sqlplus中执行计划

在sqlplus中我们一般用Autotrace来查看执行计划,从而对于一些语句执行过程分析,开展优化工作.这里就演示一下如何将autotrace权限授予给普通的用户,以scott用户为例(set autotrace on;) 工具/原料 sqlplus ssh linux 方法/步骤 1.登录scott用户,验证scott是否具有autotrace权限. 启用autotrace功能:以sysdba用户连接,运行相关脚本 3.授予需要的权限(plustrace)给scott用户 4.登录scott

执行计划:SET AUTOTRACE TRACEONLY

SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显示优化器执行路径报告SET AUTOTRACE ON STATISTICS -- 只显示执行统计信息SET AUTOTRACE ON ----------------- 包含执行计划和统计信息SET AUTOTRACE TRACEONLY ------ 同set autotrace on,但是不显示

获得执行计划方法-一 ORACLE AUTOTRACE

ORACLE sql trace AUTOTRACE 命令 1 SET AUTOTRACE OFF                   此为默认值,即关闭Autotrace2 SET AUTOTRACE ON                    产生结果集和解释计划并列出统计3 SET AUTOTRACE ON EXPLAIN            显示结果集和解释计划不显示统计4 SETAUTOTRACE TRACEONLY              显示解释计划和统计,尽管执行该语句但您将

set autotrace打印出来的执行计划不一定准确

http://blog.csdn.net/robo23/article/details/42616067 文章里简单地比较了EXPLAIN PLAN FOR和SET AUTOTRACE的方法来打印执行计划. 但偶然的机会我发现SET AUTOTRCE尽管有真实去执行SQL,但打印出来的执行计划并不一定准确.看如下实验: T表有10万条记录,A字段有普通索引,A字段的选择性很好: <span style="font-size:14px;">SQL> set autotr