您的位置:首页 > 数据库 > Oracle

oracle set autotrace SP2-0618: 无法找到会话标识符。启用检查 PLUSTRACE 角色 SP2-0611: 启用 STATISTICS 报告时出错

2014-10-14 16:39 435 查看
使用set autotrace 启用oracle 的执行计划和统计信息时,报了以下错误

1.

SP2-0618: 无法找到会话标识符。启用检查 PLUSTRACE 角色

SP2-0611: 启用 STATISTICS 报告时出错

2.

SP2-0613: 无法验证PLAN_TABLE格式或实体

SP2-0611: 启用 EXPLAN报告时出错

对于问题1,是因为PLUSTRACE角色没有创建并授权

解决方法是

1.用系统管理员身份登录 conn / as sysdba;
2.执行$ORACLE_HOME/RDBMS/ADMIN/utlxplan.sql 脚本,创建表PLAN_TABLE

3.将plan_table的表授权给用户

grant all on plan_table to scott;

对于问题2,是因为PLUSTRACE角色没有创建并授权

解决方法是

1.用系统管理员身份登录 conn / as sysdba;

2.执行$ORACLE_HOME/sqlplus/admin/plustrce.sql脚本,创建PLUSTRACE角色

实际上plustrce.sql脚本的内容如下:

set echo on

drop role plustrace;

create role plustrace;

grant select on v_$sesstat to plustrace;

grant select on v_$statname to plustrace;

grant select on v_$mystat to plustrace;

grant plustrace to dba with admin option;

set echo off

3.将plustrace角色授权给你的用户

grant plustrace to scott;

grant select any dictionary to scott;

另附:

显示执行计划和统计信息:set autotrace traceonly

只显示执行计划:set autotrace traceonly explain

只显示统计信息:set autotrace traceonly statistics

显示结果集,执行计划和统计信息:set autotrace on

显示结果集,执行计划:set autotrace on explain

显示结果集,统计信息:set autotrace on statistics

关闭autotrace:set autotrace off
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐