欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-07-13 14:12:45
...

scott用户执行set autotrace on报错:

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

原因:

用户没有PLUSTRACE角色权限

解决办法:

  1. 以sys用户,执行下面二个sql文件
    1)执行$ORACLE_HOME/sqlplus/admin/plustrce.sql ,创建角色
    2)执行$ORACLE_HOME/rdbms/admin/utlxplan.sql,创建plan_table表
    文件内容:
    set autotrace on SP2-0618: 无法找到会话标识符。启用检查 PLUSTRACE 角色 SP2-0611: 启用 STATISTICS 报告时出错
    执行文件:
    SQL> @D:\app\Administrator\product\11.2.0\dbhome_1\sqlplus\admin\plustrce.sql
    #以下为plustrce.sql的执行代码:
    SQL>
    SQL> drop role plustrace;
    drop role plustrace
              *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_$mystat to plustrace;
    
    授权成功。
    
    SQL> grant plustrace to dba with admin option;
    
    授权成功。
    
    SQL>
    SQL> set echo off
    SQL> @D:\app\Administrator\product\11.2.0\dbhome_1\RDBMS\ADMIN\utlxplan.sql
    
    表已创建。
    
  2. 给用户赋予plustrace角色权限。
    SQL> grant plustrace to scott;
    SQL> grant select any dictionary toscott;
    
  3. 测试
    退出后再次测试成功
    set autotrace on SP2-0618: 无法找到会话标识符。启用检查 PLUSTRACE 角色 SP2-0611: 启用 STATISTICS 报告时出错

后续

报错ORA-01039: 视图基本对象的权限不足


执行计划
----------------------------------------------------------
ERROR:
ORA-01039: 视图基本对象的权限不足


SP2-0612: 生成 AUTOTRACE EXPLAIN 报告时出错

统计信息
----------------------------------------------------------
          0  recursive calls
          0  db block gets
       1520  consistent gets
          0  physical reads
          0  redo size
        793  bytes sent via SQL*Net to client
        427  bytes received via SQL*Net from client
          3  SQL*Net roundtrips to/from client
          1  sorts (memory)
          0  sorts (disk)
         16  rows processed

需要给scott再授权grant select any dictionary to scott;

相关标签: oracle 数据库