SQL*PLUS中开启SQL TRACE时报错SP2-0618和SP2-0611的解决方法

以普通用户在SQL*PLUS中开启SQL TRACE时遇到如下报错:

SQL> show user
USER is "TEST01"
SQL> select * from session_roles;

ROLE
------------------------------
CONNECT
RESOURCE

SQL> set autot on exp stat
SP2-0618: Cannot find the Session Identifier.  Check PLUSTRACE role is enabled
SP2-0611: Error enabling STATISTICS report
SQL>
是由于Oracle没有将PLUSTRACE角色作为默认角色,在新建用户时不会将它默认的授予用户。

只需将这个角色授予需要开启SQL TRACE的用户即可。但在操作时发现数据库中并未创建这个角色,需要执行以下步骤来完成创建和授权:

创建PLUSTRACE角色:

    for UNIX;
    SQL> @$ORACLE_HOME/sqlplus/admin/plustrce.sql

    for WINDOWS;
    SQL> @$ORACLE_HOME\sqlplus\admin\plustrce.sql

将角色授予用户:
    SQL> GRANT plustrace TO test01;
还需要执行创建PLAN_TABLE的脚本:

执行创建脚本:

    for UNIX;
    SQL> @$ORACLE_HOME/rdbms/admin/utlxplan.sql  
 
    for WINDOWS;
    SQL> @$ORACLE_HOME\rdbms\admin\utlxplan.sql
此时再以普通用户test01开启SQL TRACE即可。


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hrbhanyu/article/details/52370672
文章标签: oracle sqlplus plustrace
个人分类: Oracle
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭