AUTOTRACE是sqlplus中的一个工具,可以显示执行查询的解释计划及使用的资源。
通过设置AUTOTRACE,可以得到AUTOTRACE报告,其中包括SQL优化器所使用的执行路径及SQL语句执行的统计信息。
成功执行DML SQL(SELECT/DELETE/UPDATE/MERGE和INSERT)语句后就会生成AUTOTRACE报告,通过报告可以对DML SQL进行监视和调优。
AUTOTRACE的配置如下:
1、cd $ORACLE_HOME/rdbms/admin
2、sqlplus / as sysdba
3、运行utlxplan.sql (@utlxplan.sql)
4、运行grant all on plan_table to 'dbuser'
创建并授予plustrace角色:
1、cd $ORACLE_HOME/sqlplus/admin
2、sqlplus / as sysdba
3、运行plustrce.sql (@plustrce.sql)
4、运行grant plustrace to 'dbuser'
设置AUTOTRACE系统变量:
1、set autotrace off; 不生产autotrace报告,默认的设置。
2、set autotrace on explain; 报告只显示优化器执行路径。
3、set autotrace on statistics; 报告只显示SQL语句的执行统计信息。
4、set autotrace on; 报告即包含优化器执行路径,也包括SQL语句的执行统计信息。
5、set autotrace traceonly; 和set autotrace on类似,只是不显示用户的查询结果。
配置并设置好,我们就可以使用了,登录数据库,操作如下:
通过设置AUTOTRACE,可以得到AUTOTRACE报告,其中包括SQL优化器所使用的执行路径及SQL语句执行的统计信息。
成功执行DML SQL(SELECT/DELETE/UPDATE/MERGE和INSERT)语句后就会生成AUTOTRACE报告,通过报告可以对DML SQL进行监视和调优。
AUTOTRACE的配置如下:
1、cd $ORACLE_HOME/rdbms/admin
2、sqlplus / as sysdba
3、运行utlxplan.sql (@utlxplan.sql)
4、运行grant all on plan_table to 'dbuser'
创建并授予plustrace角色:
1、cd $ORACLE_HOME/sqlplus/admin
2、sqlplus / as sysdba
3、运行plustrce.sql (@plustrce.sql)
4、运行grant plustrace to 'dbuser'
设置AUTOTRACE系统变量:
1、set autotrace off; 不生产autotrace报告,默认的设置。
2、set autotrace on explain; 报告只显示优化器执行路径。
3、set autotrace on statistics; 报告只显示SQL语句的执行统计信息。
4、set autotrace on; 报告即包含优化器执行路径,也包括SQL语句的执行统计信息。
5、set autotrace traceonly; 和set autotrace on类似,只是不显示用户的查询结果。
配置并设置好,我们就可以使用了,登录数据库,操作如下:
点击(此处)折叠或打开
- scott@KAIXIN> set autotrace on
- scott@KAIXIN> select 1 from dual;
-
- 1
- ----------
- 1
-
-
- Execution Plan
- ----------------------------------------------------------
- Plan hash value: 1388734953
-
- -----------------------------------------------------------------
- | Id | Operation | Name | Rows | Cost (%CPU)| Time |
- -----------------------------------------------------------------
- | 0 | SELECT STATEMENT | | 1 | 2 (0)| 00:00:01 |
- | 1 | FAST DUAL | | 1 | 2 (0)| 00:00:01 |
- -----------------------------------------------------------------
-
-
- Statistics
- ----------------------------------------------------------
- 1 recursive calls
- 0 db block gets
- 0 consistent gets
- 0 physical reads
- 0 redo size
- 508 bytes sent via SQL*Net to client
- 492 bytes received via SQL*Net from client
- 2 SQL*Net roundtrips to/from client
- 0 sorts (memory)
- 0 sorts (disk)
- 1 rows processed
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20753330/viewspace-1136491/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/20753330/viewspace-1136491/