AUTOTRACE是SQLPlus 的一个工具,可以显示所执行查询的解释计划(explain plan) 以及所用的资源。
一、配置AUTOTRACE
1、进入$ORACLE_HOME/rdbms/admin目录
其中$ORACLE_HOME为你的Oracle的安装目录,在安装过程中环境变量中应该已经配置。
2、以SYS用户或具有SYSDBA角色的用户登录SQLPlus
[oracle@oradb ~]cd /u01/app/oracle/product/11.2.0/db_1/rdbms/admin/
[oracle@oradb admin]$ sqlplus / as sysdba
3、执行 @plustrce 脚本
SYS@orcl> @plustrce;
4、执行授权命令
SYS@orcl> GRANT PLUSTRACE TO PUBLIC;
也可以把GRANT命令中的PUBLIC替换为某个特定用户。
二、控制报告
当启动AUTOTRACE之后,每次成功执行SQL语句时,SQLPlus都会自动生成一份报告。这份报告会显示SQL语句的执行路径(由SQL优化器产生)以及语句执行过程中的一些统计信息。这些信息会协助监控和调优SQL语句。
AUTOTRACE的报告选项:
· SET AUTOTRACE OFF:不生成AUTOTRACE报告,这是默认设置。
· SET AUTOTRACE ON EXPLAIN:AUTOTRACE报告只显示优化器执行路径。
· SET AUTOTRACE ON STATISTICS:AUTOTRACE 报告只显示SQL语句的执行统计信息。
· SET AUTOTRACE ON:AUTOTRACE报告既包括优化器执行路径,又包括SQL语句的执行统计信息。
· SET AUTOTRACE TRACEONLY:这与SET AUTOTRACE ON类似,但是不显示用户的查询输出(如果有的话)。· SET AUTOTRACE TRACEONLY EXPLAIN:这与SET AUTOTRACE ON类似,但是不显示用户的查询输出(如果有的话),也不显示SQL语句的执行统计信息。
AUTOTRACE命令参考详情列表:
各种组合 | 简写 | SQL执行结果 | 执行计划 | 资源消耗 |
---|---|---|---|---|
SET AUTOTRACE ON | set autot on | Y | Y | Y |
SET AUTOTRACE OFF(默认) | set autot off | Y | N | N |
SET AUTOTRACE TRACEONLY | set autot trace | N | Y | Y |
SET AUTOTRACE TRACEONLY EXPLAIN | set autot trace exp | N | Y | N |
SET AUTOTRACE TRACEONLY STATISTIC | set autot trace stat | N | Y | N |
三、配置 Statspack
必须具备 SYSDBA权限角色的用户连接Oracle 才可以安装 Statspack 。
登录后运行脚本
@spcreate.sql
执行脚本期间,会输入一些信息
1、将创建的PERFSTAT Schema要使用什么密码;
2、PERFSTAT要使用的默认表空间;
3、PERFSTAT要使用的默认临时表空间;
创建过程截图
出现以下截图,说明已经创建完成。
如果输入有误或者不小心取消了安装,下一次重新安装之前,要运行一下脚本,删除已创建的用户和已经安装的视图。
$ORACLE_HOME/rdbms/admin/spdrop.sql
END.