启用 AUTOTRACE 功能

--=======================

-- 启用 AUTOTRACE 功能

--=======================

AUTOTRACE是一个SQL*Plus工具,用于跟踪SQL的执行计划,收集执行时所耗用资源的统计信息,是SQL优化工具之一,下面给出启用

AUTOTRACE 功能步骤。

一、创建基础表

运行$ORACLE_HOME/rdbms/admin/utlxplan脚本来创建plan_table

scott@ORCL> conn system/redhat --使用system帐户登陆

Connected.

system@ORCL> start $ORACLE_HOME/rdbms/admin/utlxplan --执行utlxplan脚本

Table created.

system@ORCL> create public synonym plan_table for plan_table; --为表plan_table创建公共同义词

Synonym created.

system@ORCL> grant all on plan_table to public; --将同义词表plan_table授予给所有用户

Grant succeeded.

二、创建角色

运行$ORACLE_HOME/sqlplus/admin/plustrce.sql脚本

system@ORCL> conn / as sysdba --使用sysdba帐户登陆

onnected.

sys@ORCL> start $ORACLE_HOME/sqlplus/admin/plustrce.sql --执行创建角色的脚本

sys@ORCL>

sys@ORCL> drop role plustrace;

drop role plustrace

*

ERROR at line 1:

ORA-01919: role 'PLUSTRACE' does not exist

sys@ORCL> create role plustrace;

Role created.

sys@ORCL>

sys@ORCL> grant select on v_$sesstat to plustrace;

Grant succeeded.

sys@ORCL> grant select on v_$statname to plustrace;

Grant succeeded.

sys@ORCL> grant select on v_$mystat to plustrace;

Grant succeeded.

sys@ORCL> grant plustrace to dba with admin option;

Grant succeeded.

三、角色的授予

在创建角色后,DBA首先被授予了该角色,且可以将角色授予其它组和用户。可以手工把plustrace授予给public,

则该数据库内所有的用户都将拥有plustrace角色的权限。也可以单独授予给某个组和用户

授予给所有用户

sys@ORCL> grant plustrace to public;

授予给单独用户

sys@ORCL> grant plustrace to scott;

完成上述设置之后即可使用autotrace 功能

四、AUTOTRACE的几个选项

在sql提示符下输入set autot后将会给出设置autotrace的提示,如下

scott@ORCL> set autot

Usage: SET AUTOT[RACE] {OFF | ON | TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]]

set autotrace off :缺省值,将不生成autotrace 报告

set autotrace on :包含执行计划和统计信息

set autotrace traceonly :等同于set autotrace on,但不显示查询输出的结果

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

set autotrace on statistics :只显示执行统计信息

scott@ORCL> set autotrace on;

scott@ORCL> select * from emp where ename='SCOTT';

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- --------- ---------- ---------- ----------

7788 SCOTT ANALYST 7566 19-APR-87 3000 20

Execution Plan

----------------------------------------------------------

Plan hash value: 3956160932

--------------------------------------------------------------------------

| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |

--------------------------------------------------------------------------

| 0 | SELECT STATEMENT | | 1 | 37 | 3 (0)| 00:00:01 |

|* 1 | TABLE ACCESS FULL| EMP | 1 | 37 | 3 (0)| 00:00:01 |

--------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

1 - filter("ENAME"='SCOTT')

Statistics

----------------------------------------------------------

0 recursive calls

0 db block gets

8 consistent gets

0 physical reads

0 redo size

824 bytes sent via SQL*Net to client

385 bytes received via SQL*Net from client

2 SQL*Net roundtrips to/from client

0 sorts (memory)

0 sorts (disk)

1 rows processed

五、更多参考

Oracle 冷备份

SPFILE错误导致数据库无法启动

Oracle 用户、对象权限、系统权限

Oracle 角色、配置文件

Oracle 联机重做日志文件(ONLINE LOG FILE)

Oracle 控制文件(CONTROLFILE)

Oracle 表空间与数据文件

Oracle 归档日志

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏乐沙弥的世界

Oracle 热备份

Oracle 热备份是指数据库处于open状态下,对数据库的数据文件、控制文件、参数文件、密码文件等进行一系列备份操作。

921
来自专栏Java学习123

powerdesigner 15 如何导出sql schema

2915
来自专栏我的博客

Sqlite使用说明

安装apt-get install slqite .databases List names and files of attached databases(列...

3504
来自专栏数据和云

你不可不看的 Oracle RAC 日常基本维护命令

$ srvctl status instance -d orcl -i orcl2

1204
来自专栏猿人谷

Oracle RAC基本维护指令

所有实例和服务的状态 $ srvctl status database -d orcl Instance orcl1 is running on node l...

2177
来自专栏张戈的专栏

[svn: E155004]svn update报database is locked错误的解决办法

今天突然发现项目更新脚本在拉代码的时候抛出了一个如下错误: svn: E155004: Working copy '/home/svn/***/trunk/st...

1.1K8
来自专栏乐沙弥的世界

进程、会话、连接之间的差异

--======================== -- 进程、会话、连接之间的差异 --========================     在使用...

1152
来自专栏乐沙弥的世界

Oracle 阻塞(blocking blocked)

   阻塞是DBA经常碰到的情形,尤其是不良的应用程序设计的阻塞将导致性能严重下降直至数据库崩溃。对DBA而言,有必要知道如何定位到当前系统有哪些阻塞,到底谁是...

822
来自专栏清风

Linux服务器硬盘空间监控 原

882
来自专栏乐沙弥的世界

Oracle 闪回特性(FLASHBACK DROP & RECYCLEBIN)

--==============================================

803

扫码关注云+社区

领取腾讯云代金券