这篇文章将为大家详细讲解有关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/tech/database/202141.html