今天执行autotrace时,出现如下错误:
SQL> set autotrace on
SP2-0618: 无法找到会话标识符。启用检查 PLUSTRACE 角色
SP2-0611: 启用STATISTICS报告时出错
SQL> show user
USER 为”D_INSIGHT” –D_INSIGHT为普通用户
检查dba_role_privs:
SQL> conn sys/xxx@dd as sysdba
已连接。
SQL> select * from dba_role_privs where grantee=’D_INSIGHT’;
GRANTEE GRANTED_ROLE ADM DEF
—————————— —————————————————— —
D_INSIGHT PLUSTRACE NO NO
SQL>
检查 session_roles:
SQL> conn d_insight/XXX@dd
已连接。
SQL> select * from session_roles;
未选定行
SQL>
发现session_roles没PLUSTRACE这个角色,观察dba_role_privs,发现D_INSIGHT的PLUSTRACE的default_role为NO,也就是说如果grant给某一用户的role没有设置成default role,那么在session_roles中是没有该数据的,也就是说该role是不生效的。
修改用户的默认角色:
SQL> alter user d_insight
2 default role plustrace;
用户已更改。
SQL> select * from dba_role_privs where grantee=’D_INSIGHT’;
GRANTEE GRANTED_ROLE ADM DEF
—————————— —————————— — —
D_INSIGHT PLUSTRACE NO YES
SQL> conn d_insight/xxx@dd
已连接。
SQL> select * from session_roles;
ROLE
——————————
PLUSTRACE
再执行set autotrace on,不报错了
当然出现SP2-0618错误还有其他原因,具体可参考metalink上的相关资源
No Comments
Be the first to comment on this entry.
Leave a comment
Fields in bold are required. Email addresses are never published or distributed.
Some HTML code is allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>URLs must be fully qualified (eg: http://www.dbifan.com),and all tags must be properly closed.
Line breaks and paragraphs are automatically converted.
Please keep comments relevant. Off-topic, offensive or inappropriate comments may be edited or removed.