SQLPLUS下普通用户启用AUTOTRACE报错怎么办

这篇文章将为大家详细讲解有关SQLPLUS下普通用户启用AUTOTRACE报错怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

测试时,我在本机测试库登录ORACLE EXAMPLE数据库的HR用户后,想简单查看某条sql 的执行计划,在使用set autotrace on 这个命令后发生报错,报错如下:


HR> set autotrace on;
SP2-0618: Cannot find the Session Identifier. Check PLUSTRACE role is enabled
SP2-0611: Error enabling STATISTICS report

在网上搜索后发现报错原因为该用户无PLSUSTRACE角色的权限。
处理方案如下:
1.登录有dba角色的用户,如sys在dba_roles数据字典中查找是否存在PLUSTRACE角色
SYS>select * from dba_roles where role='PLUSTRACE';
2.如果存在,直接授权给HR用户即可,如果不存在则执行下列步骤:
  (1)使用oracle自带脚本创建该角色,在sys用户下执行  SYS>@?/sqlplus/admin/plustrce.sql
  (2)授权给HR用户,执行 SYS>grant plustrace to hr;
  (3)重新登录HR用户,启用autotrace
           SYS>conn hr/hr      
            Connected.
            HR>set autotrace on

关于“SQLPLUS下普通用户启用AUTOTRACE报错怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/202141.html

(0)
上一篇 2021年11月25日
下一篇 2021年11月25日

相关推荐

发表回复

登录后才能评论