Oracle ORA-01031: 创建用户时权限不足

Posted

技术标签:

【中文标题】Oracle ORA-01031: 创建用户时权限不足【英文标题】:Oracle ORA-01031: insufficient privileges while creating user 【发布时间】:2017-09-04 04:49:08 【问题描述】:

我创建了一个用户,我们从 sysdba 中称他为 C##USER。现在,我正在尝试从 C##USER 创建另一个用户。问题是我不断收到以下错误:

ORA-01031: 权限不足

我已授予 C##USER 所有权限并将默认角色设置为 ALL。还没有任何效果...

有什么想法吗?提前致谢。

【问题讨论】:

【参考方案1】:

您只需要一个CREATE USER 系统权限,但不要忘记使用CONTAINERclause,它应该设置为ALL,如果您省略此子句,那么被授予者将在当前拥有CREATE USER 系统权限容器。

指定 CONTAINER = ALL 以将系统特权、通用对象或角色的对象特权共同授予通用用户或通用角色

GRANT

创建普通用户帐户时,会在所有打开的可插拔数据库中创建该帐户。所以创建这个新用户的用户必须在所有容器上拥有CREATE USER 系统权限。

SQL> grant create user to c##user container=all;

Grant succeeded.

SQL> conn c##user
Enter password: 
Connected.
SQL> create user c##user2 identified by user2;

User created.

【讨论】:

以上是关于Oracle ORA-01031: 创建用户时权限不足的主要内容,如果未能解决你的问题,请参考以下文章

ORA-01031权限不足怎么解决?

创建同义词 ora-01031 权限不足

oracle 存储过程 权限问题 PL/SQL: ORA-01031: 权限不足

ORA-01031: 创建包时权限不足

IMP-00003: 遇到 ORACLE 错误 1031 ORA-01031: 权限不足

sqlplus/rman登录报权限错误ORA-01031/ORA-04005/0RA-00554