文档解释
ORA-28021: cannot grant global roles
Cause: The role granted was IDENTIFIED GLOBALLY. Global roles can only be granted via a central authority for the domain.
Action: Use ALTER ROLE to change the type of role (from IDENTIFIED GLOBALLY to other, such as IDENTIFIED BY password), or allocate it to a global user via the central authority.
ORA-28021: cannot grant global roles
ORA-28021是Oracle数据库给出的一个发出警告的不可恢复的错误。它表明无法授予用户一个特定的全局角色,因为他们已经具有这些角色的代理权限。
官方解释
ORA-28021 指示无法授予用户一个或多个全局角色,因为这些角色已存在于该用户的代理角色中。
常见案例
当您试图授予某个用户一个全局角色时,可能会遇到错误 ORA-28021,因为该用户已经通过另一个全局角色或代理角色获得了此角色的权限。
一般处理方法及步骤
1.使用 SHOW USER 命令检查用户是否已经拥有该全局角色的权限。
2.如果用户已有该角色的权限,则无需执行任何操作,否则可以使用 GRANT 命令授予该角色:
GRANT role_name TO username;
3.最后,检查 GRANT 语句是否正确执行,并检查执行结果。