`
foreversunyao
  • 浏览: 214143 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

sqlplus autotrace

    博客分类:
  • DB
阅读更多

出自eygle http://www.eygle.com/faq/AutoTrace.htm

D:\oracle\ora92>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 3 15:16:03 2003

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> connect sys as sysdba
请输入口令:
已连接。
SQL> @?\rdbms\admin\utlxplan

表已创建。

SQL> create public synonym plan_table for plan_table;

同义词已创建。

SQL> grant all on plan_table to public ;

授权成功。

SQL> @?\sqlplus\admin\plustrce
SQL>
SQL> drop role plustrace;
drop role plustrace
*
ERROR 位于第 1 行:
ORA-01919: 角色'PLUSTRACE'不存在

SQL> create role plustrace;

角色已创建
SQL>
SQL> grant select on v_$sesstat to plustrace;

授权成功。

SQL> grant select on v_$statname to plustrace;

授权成功。

SQL> grant select on v_$session to plustrace;

授权成功。

SQL> grant plustrace to dba with admin option;

授权成功。

SQL>
SQL> set echo off

 

 

DBA用户首先被授予了plustrace角色,然后我们可以把plustrace授予public

这样所有用户都将拥有plustrace角色的权限.

 

 

SQL> grant plustrace to public ;

授权成功。

 

然后我们就可以使用AutoTrace的功能了.

 

 

SQL> connect eqsp/eqsp
已连接。
SQL> set autotrace on
SQL> set timing on
SQL>

 

 

关于Autotrace几个常用选项的说明:

SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式
SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显示优化器执行路径报告
SET AUTOTRACE ON STATISTICS -- 只显示执行统计信息
SET AUTOTRACE ON ----------------- 包含执行计划和统计信息
SET AUTOTRACE TRACEONLY ------ 同set autotrace on,但是不显示查询输出

 

SQL> set autotrace traceonly
SQL> select table_name from user_tables;

已选择98行。

已用时间: 00: 00: 00.04

Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 NESTED LOOPS
2 1 NESTED LOOPS (OUTER)
3 2 NESTED LOOPS (OUTER)
4 3 NESTED LOOPS (OUTER)
5 4 NESTED LOOPS (OUTER)
6 5 NESTED LOOPS
7 6 TABLE ACCESS (BY INDEX ROWID) OF 'OBJ$'
8 7 INDEX (RANGE SCAN) OF 'I_OBJ2' (UNIQUE)
9 6 TABLE ACCESS (CLUSTER) OF 'TAB$'
10 9 INDEX (UNIQUE SCAN) OF 'I_OBJ#' (NON-UNIQUE)
11 5 TABLE ACCESS (BY INDEX ROWID) OF 'OBJ$'
12 11 INDEX (UNIQUE SCAN) OF 'I_OBJ1' (UNIQUE)
13 4 INDEX (UNIQUE SCAN) OF 'I_OBJ1' (UNIQUE)
14 3 TABLE ACCESS (CLUSTER) OF 'USER$'
15 14 INDEX (UNIQUE SCAN) OF 'I_USER#' (NON-UNIQUE)
16 2 TABLE ACCESS (CLUSTER) OF 'SEG$'
17 16 INDEX (UNIQUE SCAN) OF 'I_FILE#_BLOCK#' (NON-UNIQUE)
18 1 TABLE ACCESS (CLUSTER) OF 'TS$'
19 18 INDEX (UNIQUE SCAN) OF 'I_TS#' (NON-UNIQUE)

 

Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
1389 consistent gets
0 physical reads
0 redo size
2528 bytes sent via SQL*Net to client
569 bytes received via SQL*Net from client
8 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
98 rows processed

SQL>

分享到:
评论

相关推荐

    Oracle性能分析——使用set_autotrace_on和set_timing_on来分析select语句的性能.doc

    但是,在 sqlplus 工具下,使用 set autotrace on 和 set timing on 的方式是比较简便的。 使用 set autotrace on 和 set timing on 可以得到 SQL 语句的实际运行时间和查询计划。首先,在 sqlplus 工具下,输入 ...

    oracle使用autotrace 功能

    Oracle的Autotrace是SQL*Plus中的一个强大工具,它主要用于帮助数据库管理员和开发人员分析SQL查询的执行计划,并收集执行时的性能统计数据。通过这些信息,可以有效地进行SQL查询优化,提高数据库的性能。下面是...

    oracle 小结 sqlplus 系统表

    1. **Autotrace设置**:通过`set autotrace on`或`set autotracetraceonly explain`启用自动追踪功能,以获取SQL语句的执行计划。这有助于理解查询的执行路径和优化策略。 2. **Timing设置**:使用`set timing on`...

    oracle 中 sqlplus命令大全

    - 使用`EXPLAIN PLAN`或`SET AUTOTRACE ON`来分析SQL语句的执行计划,评估性能。 使用SQL*Plus时,用户不仅可以执行单个SQL语句,还可以编写批处理脚本,通过循环、条件判断等控制结构实现自动化任务。此外,SQL*...

    获取SQL语句的执行计划v1

    - **关闭autotrace**:可以通过命令`set autotrace off`来关闭autotrace功能。 #### 方法2:使用EXPLAIN PLAN FOR / dbms_xplan.display **生成执行计划** 此方法无需进行任何配置。下面是使用该方法生成和查看...

    Oracle数据库基础及应用第05章SQLPlus命令.pptx

    【Oracle数据库基础及应用第05章SQLPlus命令】 Oracle数据库是世界上最广泛使用的数据库管理系统之一,而SQL*Plus是Oracle提供的一种命令行工具,用于执行SQL语句和PL/SQL块,实现对数据库的访问、查询、更新和管理...

    Oracle连接和使用.pdf

    首先,我们关注的是sqlplus,它是Oracle提供的一个命令行工具,用于与数据库交互。sqlplus不仅适用于初学者,也深受经验丰富的DBA喜爱。通过sqlplus,用户可以执行SQL查询、DML语句、DDL语句以及PL/SQL块。以下是...

    Oracle默认用户名与密码速查表.doc

    /sqlplus/admin/plustrce.sql 命令,grant plustrace to public。 使用 AutoTrace 工具可以帮助用户了解 SQL 语句的执行计划和执行成本,可以提高 SQL 语句的执行效率。例如,可以使用 SET AUTOTRACE ON 命令启用 ...

    ORACLE命令行查看实际的执行计划

    `SET AUTOTRACE ON`是开启SQLPLUS的自动跟踪功能,它会在你执行SQL语句后显示执行计划和性能统计。在SQLPLUS中输入此命令,系统会记录接下来执行的SQL语句的详细信息,包括解析、执行和收获阶段的信息。 3. **执行...

    Oracle中explain_plan的用法

    set autotrace traceonly /*traceonly 可以不显示执行结果*/ SQL> / Execution Plan ---------------------------------------------------------- 0 SELECT STATEMENT Optimizer=CHOOSE 1 0 NESTED LOOPS 2 1...

    oracle explain plan总结

    ### Oracle Explain Plan 总结 #### 一、Oracle 执行计划的重要性 在Oracle数据库中,为了提高查询效率和...无论是使用`EXPLAIN PLAN`还是`AUTOTRACE`,都能够帮助我们更好地理解SQL语句的执行流程,并据此进行优化。

    Oracle查看SQL执行计划SQL性能分析.docx

    - `set autotrace off`: 关闭autotrace功能。 - `set autotrace on explain`: 显示执行计划。 - `set autotrace on statistics`: 显示执行的统计信息。 - `set autotrace on`: 同时显示执行计划和统计信息。 - `set ...

    数据库管理员面试题

    2. 查看 SQL 执行计划:使用 SQLplus 的 autotrace 选项和 utlxplan.sql script 创建 plan_table 表 3. 使用 Cost-Based Optimizer (CBO):设置optimizer_mode参数,CBO 需要统计信息,RBO 会选择不合适的索引 4. ...

    SQL执行计划简单分析

    在 SQLPLUS 中,可以使用 SET AUTOTRACE ON 命令来查看执行计划。当我们执行一个 SQL 语句时,SQLPLUS 将在查询结果后显示执行计划。例如,执行以下语句: ```sql SET AUTOTRACE ON SELECT * FROM hr.employees; ``...

    DBA面试题宝典借鉴.pdf

    2. 查看 SQL 的执行计划:使用 sqlplus set autotrace ... utlxplan.sql 创建 plan_table 表 3. 使用 CBO(Cost-Based Optimizer):在初始化参数中设置 optimizer_mode=choose/all_rows/first_row 二、SQL 优化 4...

    Oracle培训讲义(性能分析与调整).docx

    \sqlplus\admin\plustrce SQL> create role plustrace; SQL> grant select on v_$sesstat to plustrace; SQL> grant select on v_$statname to plustrace; SQL> grant select on v_$session to plustrace; SQL> ...

Global site tag (gtag.js) - Google Analytics