sqlplus的autotrace开关

官方文档https://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_eight.htm#i1037226

image

set autotrace off表示关闭,是默认的(set autot off)

set autotrace on表示显示结果、执行计划、统计信息(set autot on)

set autotrace on explain表示显示结果、执行计划(set autot on exp)

set autotrace on statistics表示显示结果、统计信息(set autot on stat)

set autotrace traceonly表示显示执行计划、统计信息(set autuot trace)

set autotrace traceonly explain表示显示执行计划(set autot trace exp)

set autotrace traceonly statistics表示显示统计信息(set autot trace stat)


统计信息可以看到资源消耗量,如物理读、逻辑读、redo量、排序量等


autotrace简写为autot

explain简写为exp

statistics简写为stat

traceonly简写为trace


用户要有创建PLAN_TABLE表和有PLUSTRACE角色,才行

比如给scott用户赋权限,用scott用户执行@$ORACLE_HOME/rdbms/admin/utlxplan.sql 来创建PLAN_TABLE表

然后用sys用户执行@$ORACLE_HOME/sqlplus/admin/plustrce.sql 来创建PLUSTRACE角色

然后GRANT PLUSTRACE TO scott即可

具体如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
16:27:36 SCOTT@edw> set autotrace on
SP2-0618: Cannot find the Session Identifier.  Check PLUSTRACE role is enabled
SP2-0611: Error enabling STATISTICS report
16:27:51 SCOTT@edw> @$ORACLE_HOME/rdbms/admin/utlxplan.sql  
 
Table created.
 
Elapsed: 00:00:00.11
16:59:54 SCOTT@edw> conn / as sysdba;
Connected.
17:00:22 SYS@edw> @$ORACLE_HOME/sqlplus/admin/plustrce.sql
17:00:32 SYS@edw>
17:00:32 SYS@edw> drop role plustrace;
drop role plustrace
          *
ERROR at line 1:
ORA-01919: role 'PLUSTRACE' does not exist
 
 
Elapsed: 00:00:00.01
17:00:32 SYS@edw> create role plustrace;
 
Role created.
 
Elapsed: 00:00:00.01
17:00:32 SYS@edw>
17:00:32 SYS@edw> grant select on v_$sesstat to plustrace;
 
Grant succeeded.
 
Elapsed: 00:00:00.01
17:00:32 SYS@edw> grant select on v_$statname to plustrace;
 
Grant succeeded.
 
Elapsed: 00:00:00.01
17:00:32 SYS@edw> grant select on v_$mystat to plustrace;
 
Grant succeeded.
 
Elapsed: 00:00:00.00
17:00:32 SYS@edw> grant plustrace to dba with admin option;
 
Grant succeeded.
 
Elapsed: 00:00:00.01
17:00:32 SYS@edw>
17:00:32 SYS@edw> set echo off
 
Elapsed: 00:00:00.01
17:01:27 SYS@edw> GRANT PLUSTRACE TO scott;   
 
Grant succeeded.
 
Elapsed: 00:00:00.00
17:01:47 SYS@edw>
posted @   九命猫幺  阅读(526)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示