现在的位置: 首页 > 数据库 > 正文

Oracle Scott用户set autotrace提示启用 STATISTICS 报告时出错

2014年11月11日 数据库 ⁄ 共 685字 暂无评论 ⁄ 阅读 1,539 次

在使用oracle测试用户scott启用autotrace时报错,具体错误如下:

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

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

从错误可以看出两点:一是跟角色plustrace有关,另外跟用户对于特定视图的权限有关。

方法一:

直接使用DBA用户,或者给你的用户赋权DBA,这样就不会有权限问题了。但通常情况下,不应该给其他用户赋权DBA。

方法二:

我们可以直接解决用户权限然后解决这个问题,首先,切换到DBA用户登录,然后使用以下语句直接给特定用户如scott赋权:

grant select on v_$sesstat to scott;

grant select on v_$statname to scott;

grant select on v_$mystat to scott;

然后再使用set autotrace on就不出有错误了。

方法三:

创建plustrace角色,然后将角色赋给特定用户。Oracle已经提供了角色plustrace的创建脚本,所以,我们只需要找到这个脚本然后执行就好了,如:

@H:\Oracle\product\11.2.0\dbhome_1\sqlplus\admin\plustrce.sql

其中,@是sqlplus中执行脚本符号,后面的路径是你的plustrace.sql脚本文件所在路径。

脚本执行完成,你会看到角色已经创建。下面,你只需要把角色赋权给你的用户就好了,如:

grant plustrace to scott;

或者,你可以把角色赋权给所有用户,如:

grant plustrace to public;

» 声明:本站文章源于个人经验总结或书籍、互联网转载,内容仅用于个人学习,请勿转载,否则后果自负!

给我留言

留言无头像?