暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

故障处理|Oracle 如何解决 ORA-01919:角色不存在

原创 小小亮 2022-10-27
4676

ORA-01919

ORA-01919 表示 Oracle 找不到您指定的任何权限,因此转而在角色中搜索名称,但仍然没有运气。

让我们看看一些错误模式。

1. 无效权限

尝试向用户授予权限,但失败并出现 ORA-01919。

SQL> grant create_table to hr;
grant create_table to hr
      *
ERROR at line 1:
ORA-01919: role 'CREATE_TABLE' does not exist

换句话说,您在语句中指定的特权既不是有效的特权,也不是有效的角色。

2. PLUSTRACE

在某些情况下,您可能认为特权或角色是有效的。我们以PLUSTRACE为例。

SQL> grant plustrace to hr;
grant plustrace to hr
      *
ERROR at line 1:
ORA-01919: role 'PLUSTRACE' does not exist

是的,PLUSTRACE是Oracle数据库中有效的角色,但需要安装!

解决方案

1. 无效权限

您应该为该语句指定一个有效的特权或有效的角色。在这种情况下,我们应该使用CREATE TABLE,而不是CREATE_TABLE

SQL> grant create table to hr;

Grant succeeded.

2. PLUSTRACE

要创建PLUSTRACE角色,只需通过SYS执行$ORACLE_HOME/sqlplus/admin/plustrce.sql 即可

为了正确授予权限,可点此查看《 Oracle 正确授予权限》。


原文标题:How to Resolve ORA-01919: role does not exist

原文作者:Ed Chen

原文链接:https://logic.edchen.org/how-to-resolve-ora-01919-role-does-not-exist/

最后修改时间:2022-10-27 14:59:33
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论