在oracle中,可以利用revoke取消dba权限,revoke可以对权限进行撤销操作,并且执行该语句需要执行者本来就具有dba权限,语法为“revoke dba from user_Name;”。
本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。
取消某用户的DBA权限则执行:
revoke dba from user_Name
执行这一条语句需要执行者本来就要有DBA权限
扩展:
--查询数据库中拥有DBA权限的角色
select * from dba_role_privs where granted_role='DBA'
--添加user_Name角色的DBA权限
grant dba to user_Name
但已知的登录用户没有DBA权限,那就需要登录sys账号才能授权了。
打开cmd,
连接sqlplus,
连接sys/orcl as sysdba,
使用命令grant dba to user_Name; (这一句记得添加分号)
撤销权限扩展:
Oracle撤销权限的概念就是对用户或角色的权限的回收,也就是对用户删除某个系统权限或者删除某个对象的操作权限。
Oracle撤销系统权限
Oracle撤销系统权限只有具有DBA权限的用户才能进行撤销(revoke)操作。撤销系统权限的语法如下:
revoke system_privilege from user|role;
语法解析:
1、system_privilege:指的是撤销的系统权限的名称,撤销系统权限时,必须是该用户具有了该系统权限,假如不存在系统权限是不能进行撤销的。
2、user|role:指的是撤销权限的对象是用户还是角色。
例1、利用revoke命令撤销用户teacher的create session权限,代码如下:
revoke create session from teacher;
然后通过数据字典dba_sys_privs可以查询一下TEACHER的系统权限,发现create session已经不存在了。
推荐教程:《Oracle视频教程》
以上是oracle怎么取消dba权限的详细内容。更多信息请关注PHP中文网其他相关文章!