Wednesday, September 16, 2009

ORA-01956: invalid command when OS_ROLES are being used

SQL> grant dba to donghua;
grant dba to donghua
*
ERROR at line 1:
ORA-01956: invalid command when OS_ROLES are being used

ORA-01956: invalid command when OS_ROLES are being used
Cause: This command cannot be used when the INIT.ORA parameter OS_ROLES is TRUE.
Action: Grant the role to the user in the operating system.

Suggestion: Use oracle managed role privileges by setting OS_ROLES=false.

More info on OS managed roles:
Using Operating System Role Identification