您的位置:首页 > 其它

SP2-0618和_SP2-0611错误处理 plustrce权限问题

2013-04-28 14:21 337 查看
AUTOTRACE是一项SQL*Plus功能,自动跟踪为SQL语句生成一个执行计划并且提供与该语句的处理有关的统计。

SQL*Plus AUTOTRACE可以用来替代SQL Trace使用,AUTOTRACE的好处是您不必设置跟踪文件的格式,并且它将自动为SQL语句显示执行计划。然而,AUTOTRACE分析和执行语句;而EXPLAIN PLAN仅分析语句。

使用AUTOTRACE不会产生跟踪文件。

一、启用Autotrace功能。任何以SQL*PLUS连接的session都可以用Autotrace,不过还是要做一些设置的,否则可能报错。

1、报错示例:

HR@SQL:> set autotrace on;

SP2-0613: Unable to verify PLAN_TABLE format or existence

SP2-0611: Error enabling EXPLAIN report

SP2-0618: Cannot find the Session Identifier. Check PLUSTRACE role is enabled

SP2-0611: Error enabling STATISTICS report

*******************************************************************************

SQL> set autotrace on;

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

SP2-0611:启用EXPLAIN报告时出现错误

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

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

该错误的的主要原因是由于当前用户下没有PLAN_TABLE这张表及相应的PLUSTRACE角色权限。

2、解决方法:

A.以SYS用户登录:

oracle>sqlplus '/ as sysdba';

B.运行utlxplan.sql(rdbms/admin下)脚本创建PLAN_TABLE;

SQL>@ D:\oracle\ora81\RDBMS\ADMIN\utlxplan.sql

C.通过执行plustrce.sql(ORACLE_HOME/sqlplus/admin/plustrce.sql)脚本创建plustrace角色,这将V$视图上的选择权限授予该角色,也将plustrace角色授予DBA角 色,脚本部份内容如下:

droproleplustrace;

create role plustrace;

grant select on v_$sesstat to plustrace;

grant select on v_$statname to plustrace;

grant select on v_$session to plustrace;

grant plustrace to dba with admin option;

D.将plustrace角色授予当前用户(无DBA角色的用户)。

conn sys/sys as sysdba

sql>grant dba to hr

sql>conn hr/hr

sql>set autotrace on

OK....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: