ITPub博客

首页 > 数据库 > Oracle > Scott用户无法使用autotrace问题

Scott用户无法使用autotrace问题

Oracle 作者:desert_xu 时间:2017-01-12 15:47:32 0 删除 编辑
SQL> conn scott/scott;
想要打开autotrace的时候报错:
SQL> set timing on   
SQL> set autotrace traceonly
SP2-0618: Cannot find the Session Identifier.  Check PLUSTRACE role is enabled
SP2-0611: Error enabling STATISTICS report

解决办法:
SQL> conn / as sysdba;
Connected.
SQL> select * from dba_roles where role='PLUSTRACE';
no rows selected
该数据库中目前不存在该角色,需要创建:
SQL> @?/sqlplus/admin/plustrce.sql
将该角色赋予scott用户:
SQL> grant plustrace to scott;
Grant succeeded.
SQL> conn scott/scott;
Connected.
SQL> set autotrace traceonly
但在查看执行计划的时候依然报如下错误:
Execution Plan
----------------------------------------------------------
ERROR:
ORA-01039: insufficient privileges on underlying objects of the view
SP2-0612: Error generating AUTOTRACE EXPLAIN report

需要授予scott用户查看数据字典的权限:
SQL> grant select any dictionary to scott;
Grant succeeded.







附:
plustrce.sql脚本的内容:
SQL> host cat $ORACLE_HOME/sqlplus/admin/plustrce.sql
--
-- Copyright (c) Oracle Corporation 1995, 2002.  All Rights Reserved.
--
-- NAME
--   plustrce.sql
--
-- DESCRIPTION
--   Creates a role with access to Dynamic Performance Tables
--   for the SQL*Plus SET AUTOTRACE ... STATISTICS command.
--   After this script has been run, each user requiring access to
--   the AUTOTRACE feature should be granted the PLUSTRACE role by
--   the DBA.
--
-- USAGE
--   sqlplus "sys/knl_test7 as sysdba" @plustrce
--
--   Catalog.sql must have been run before this file is run.
--   This file must be run while connected to a DBA schema.

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


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21980353/viewspace-2132344/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-10-23

  • 博文量
    79
  • 访问量
    244430