How to create user in Oracle Multitenant 12c without C## prefix

How to create user in Oracle Multitenant 12c without C## prefix

When I try to create a user without the c## prefix I get the ORA-65096 error:

 


$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Sat May 16 07:44:23 2020

Copyright (c) 1982, 2014, Oracle. All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Advanced Analytics and Real Application Testing options

SQL> create user ADMDADOS identified by ADMDADOS container=all;
create user ADMDADOS identified by ADMDADOS container=all
*
ERROR at line 1:
ORA-65096: invalid common user or role name

 

If you wish to create common user under CDB$ROOT than create user start with C## and c##:

 

ORA-65096: invalid common user or role name

Cause: An attempt was made to create a common user or role with a name that was not valid for common users or roles. In addition to the usual rules for user and role names, common user and role names must start with C## or c## and consist only of ASCII characters.

Action: Specify a valid common user or role name.

 

Solution:

Note: To change any hidden parameter always consult Oracle support!

 


SQL> alter session set "_ORACLE_SCRIPT"=true;

Session altered.

SQL> create user ADMDADOS identified by ADMDADOS container=all;

User created.

SQL> col username for a30
SQL> set lines 180
SQL> select username,common from dba_users where username='ADMDADOS';

USERNAME COM
-------------------- ---
ADMDADOS YES