向Oracle 12c中的用户授予所有特权

时间:2018-09-12 13:34:01

标签: oracle oracle12c privileges

在Ora11g中,我曾经向用户授予以下所有特权。

create user xx identified by psw;
grant create session, grant any privilege to xx;
grant all privileges to xx;

但是在Ora 12c中,当我执行授予特权时,出现以下错误。

  

从命令第2行开始的错误-授予创建会话,授予   xx错误报告的任何特权-ORA-00604:错误发生在   递归SQL级别1 ORA-20997:“ GRANT ANY PRIVILEGE”授予不   允许的ORA-06512:在“ RDSADMIN.RDSADMIN”行79中   2   00604. 00000-“在递归SQL级别%s发生错误”   *原因:处理递归SQL语句时发生错误              (适用于内部字典表的语句)。   *操作:如果情况在堆栈上的下一个错误中描述              可以纠正,这样做;否则,请联系Oracle支持。

我尝试了1中建议的答案,但似乎没有用。

1Regarding Users in Oracle 12c

正在收到以下错误。

  

将所有特权赋予名称错误报告-ORA-00922:丢失或   无效的选项   00922. 00000-“选项缺失或无效”   *原因:
  *动作

您对“向ora12c中的用户授予所有特权的帮助”非常感谢。

谢谢!

1 个答案:

答案 0 :(得分:0)

是的。我能够使用命名空间授予特权。

Create user xx identified by psw account unlock; 
grant connect to xx;
grant create session, create table, create sequence, create trigger to
xx; 
alter user xx quota 5M on USERS;
commit;

如果您需要分配无限的配额,请使用它。

ALTER USER xx quota unlimited on USERS;
commit;