`

在sqlplus中执行set autotrace on 报cannot set autotrace 错误解决方法

阅读更多

引用网址:http://www.cnblogs.com/cangos/archive/2011/12/19/2293935.html

 

今天在一台机器中想分析下执行计划,但是在sqlplus中输入set autotrace on 报cannot set autotrace 错误

解决方法如下:

首先必须采用用Oracle的sqlplus登陆sys账号

sqlplus " sys/sys@XXX as sysdba "

然后执行如下脚本:

@F:\oracle\product\10.2.0\db_1\sqlplus\admin\plustrce.sql (创建plustrace角色并授权)   


 

@F:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlxplan.sql (创建执行计划的表)


 

然后执行: grant all on plan_table to public; (也可以授权给某一个单独的用户)

               grant plustrace to public ; 

运行结果:

SQL> grant all on plan_table to public;

授权成功。

SQL> grant plustrace to public ;

授权成功。

 

 

 

然后就可以进行 set autotrace了  但是只能在sqlplus中运行相关命令,在pl/sql developer等工具中仍然报错

 运行结果:

SQL> SET AUTOTRACE 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,但是不显示查询输出

 

Autotrace执行计划的各列的涵义

 

序号

列名

解释

1

ID_PLUS_EXP

每一步骤的行号

2

PARENT_ID_PLUS_EXP

每一步的Parent的级别号

3

PLAN_PLUS_EXP

实际的每步

4

OBJECT_NODE_PLUS_EXP

Dblink或并行查询时才会用到

 

AUTOTRACE Statistics常用列解释

 

序号

列名

解释

1

db block gets

从buffer cache中读取的block的数量

2

consistent gets

从buffer cache中读取的undo数据的block的数量

3

physical reads

从磁盘读取的block的数量

4

redo size

DML生成的redo的大小

5

sorts (memory)

在内存执行的排序量

7

sorts (disk)

在磁盘上执行的排序量

分享到:
评论

相关推荐

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

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

    sqlplus中批量执行sql文件

    3. **查看执行结果**:在SQLPlus中执行完`execute.sql`后,可以查看每条SQL语句的执行结果以及是否有任何错误发生。如果在SQL文件中加入了`show error;`语句,则可以直接查看错误信息。 #### 三、注意事项 1. **...

    oracle使用autotrace 功能

    只需在执行SQL语句之前输入`set autotrace on`命令。这将自动追踪接下来执行的SQL语句,展示执行计划和性能统计信息。 5. **解决权限问题** 如果遇到“ORA-01039: 视图基本对象的权限不足”的错误,可能是因为用户...

    sqlplus中常用的set用法

    在SQL*Plus环境中,`set`命令是一种非常重要的工具,用于调整用户会话的各种设置,以优化输出格式、控制查询行为或改善交互式操作的体验。以下是对标题和描述中涉及的`set`命令常用用法的详细说明: 1. **设置页面...

    解决linux环境下sqlplus乱码的方法

    在Linux环境下,SQL*Plus是Oracle数据库管理系统的命令行工具,用于执行SQL语句和PL/SQL块。然而,有时用户可能会遇到字符编码问题,导致输出显示为乱码。这通常与系统环境变量、终端设置或者数据库自身的字符集不...

    oracle sqlplus测试出现错误的解决方法

    ### Oracle SQLPlus 测试出现错误的解决方法 在使用Oracle SQLPlus工具时,尤其是在Windows 7环境下通过命令提示符(CMD)启动SQLPlus时,可能会遇到一个常见的错误:SP2-1503: 无法初始化 Oracle 调用界面。这个...

    在SQLPlus中改变字体和字符集

    摘要:本文主要介绍了在 SQLPlus 中改变字体和字符集的方法,对于 Oracle 数据库管理员来说,这是一项非常重要的技能。通过对注册表的修改,可以改变 SQLPlus 中的字体大小和字符集,从而提高工作效率。 知识点一:...

    SQLPlus中的复制和粘贴技巧

    通过熟练运用这些技巧,你将在SQLPlus环境中更加游刃有余,提高你的工作效率,减少手动输入的错误,并更好地管理你的SQL查询和脚本。记住,实践是提高技能的关键,不断尝试和熟悉这些方法,你将成为SQLPlus的专家。

    获取SQL语句的执行计划v1

    ### 获取SQL语句的执行计划 在Oracle数据库中,了解SQL语句的执行...以上方法涵盖了在Oracle数据库中获取SQL语句执行计划的主要途径。根据实际需求选择合适的方法,可以帮助开发者和DBA更好地理解并优化SQL查询性能。

    sqlplus中文插件

    在实际应用中,熟练使用SQLPlus不仅可以进行数据查询,还可以创建和修改数据库对象,执行数据库备份和恢复,以及进行性能优化等高级任务。因此,熟悉SQLPlus及相关的中文插件对于从事Oracle数据库管理工作的专业人士...

    SQLPLUS命令查询文档

    SQLPLUS是Oracle数据库系统中的一个命令行工具,用于执行SQL语句和PL/SQL块,进行数据查询、数据库管理以及数据库脚本的编写。这个"SQLPLUS命令查询文档"很可能是一个详细介绍了SQLPLUS使用方法的CHM(Compiled ...

    sqlplus日期格式和中文乱码解决文.pdf

    SQLplus 日期格式和中文乱码解决方法 在数据库中查询数据时,我们经常会遇到日期时间格式的问题,例如显示语言、显示格式等。这可能是因为数据库中存储的格式是YYYY-MM-DD HH24:MI:SS,但是查询出来的却是22-1月-10...

    解决sqlplus 删除键,方向键扥乱码

    在SQL*Plus中,用户可能会遇到输入删除键(Delete)或方向键时出现乱码的问题。这通常是由于终端编码设置不正确或者SQL*Plus的NLS设置与系统环境不匹配导致的。以下是一些详细的知识点,帮助你解决这个问题: 1. **...

    ORA-12737 ZHS16GBK 解决方案 oci sqlplus

    在Oracle数据库环境中,当用户尝试使用oci(Oracle Call Interface)或者sqlplus进行连接时,可能会遇到"ORA-12737"错误。这个错误通常表明客户端与服务器之间的字符集不兼容,具体在这个例子中是"Instant Client ...

    SQLPLUS在Bash_shell的使用

    在Bash Shell脚本中,我们可以利用SQLPLUS的这些特性来执行一系列数据库操作。例如,创建一个Shell脚本,其中包含SQLPLUS命令行,可以实现数据备份、查询、更新等任务。使用`system()`或`echo`命令将SQLPLUS命令传递...

    sqlplusw 与 sqlplus登陆数据库的方法总结

    1.本机 orcl 数据库:需要在 tnsnames.ora 中配置 ORCL,否则报“ORA-12514:TNS:无法解析指定的连接符”的错误。 2.本机 cesp 数据库:同上,需要在 tnsnames.ora 中配置。 3.远程 scordbd1 数据库:同上,需要在...

    SQLPLUS命令.rar

    2. 退出SQLPLUS:在SQLPLUS会话中,输入`EXIT`或`QUIT`命令即可退出。 二、SQLPLUS基本命令 1. `HELP`:显示SQLPLUS的帮助信息,如`HELP command`显示特定命令的帮助。 2. `\h`:同`HELP`,用于查看帮助。 3. `\p`...

    SQLPlus命令使用大全PDF

    SQLPlus是Oracle数据库管理系统中的一个实用工具,它允许用户通过命令行界面执行SQL查询、脚本和数据库管理任务。这个“SQLPlus命令使用大全PDF”很可能是为用户提供了一个全面的指南,涵盖了各种SQLPlus操作和命令...

    sqlplus 批处理

    4. 使用SQLPLUS执行批处理: 执行批处理文件,需要在SQLPLUS命令行中调用该文件。打开命令行窗口,输入以下命令: ``` sqlplus 用户名/密码@数据库实例 @batch.sql ``` 这里的"用户名"是数据库的登录账号,"密码...

Global site tag (gtag.js) - Google Analytics