Oracle autotrace开启方法:

首先使用sysdba登陆到oracle中:

SQL>$ORACLE_HOME/rdbms/admin/utlxplan.sql


SQL>create public synonym plan_tablefor plan_table;

SQL>grant all on plan_table to public;


plustrace角色,并设置权限

SQL>@$ORACLE_HOME/sqlplus/admin/plustrce.sql


DBA用户首先被授予了plustrace角色,然后我们可以把plustrace授予public,这样所有用户都将拥有plustrace角色的权限.


Sql>grant plustrace to itsm_sac_kaifa;


启动autotrace功能:

Sql>conn itsm_sac_kaifa/itsm  

Sql>set autotrace on;



SET AUTOTRACE OFF------------不生成AUTOTRACE报告,这是缺省模式

SET AUTOTRACE ONEXPLAIN ----- AUTOTRACE只显示优化器执行路径报告

SET AUTOTRACE ONSTATISTICS --只显示执行统计信息

SET AUTOTRACE ON-------------包含执行计划和统计信息

SET AUTOTRACE TRACEONLY-------set autotrace on,但是不显示查询输出



很奇怪的地方在于:我在plsql中不能显示出autotrace

但是我使用xshell工具可以显示出来。

还有,显示autotrace的方法:

每一次都要使用sysdba用户登陆,然后grant plustrace to itsm_sac_kaifa;

然后conn itsm_sac_kaifa/itsm,然后set autotrace on

然后执行sql就有自动追踪了。



autotrace是只能在sqlplus中独有的utilities,plsql也是针对数据库的一个接口工具

它无法打开autotrace