在 12cR1 数据库中创建测试用户是报 ORA-65096 错误(2c: ORA-65049: creation of local user or role is not allowed in C)

12c: ORA-65049: creation of local user or role is not allowed in CDB$ROOT

此问题已回答

Last night I installed Oracle 12C on OEL 6.4. See Installing Oracle Spatial and Graph 12c on OEL 6.4 .

 

Today I attempted to create a test user following a syntax that worked for 11g but I received a permission error.

 

$ sqlplus sys as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on Wed Jun 26 07:08:11 2013

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

 

Enter password:

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

 

SQL> GRANT DBA, CONNECT, RESOURCE TO STEVE IDENTIFIED BY dbl-secret-pwd;

GRANT DBA, CONNECT, RESOURCE TO STEVE IDENTIFIED BY dbl-secret-pwd

*

ERROR at line 1:

ORA-65049: creation of local user or role is not allowed in CDB$ROOT

 

Any ideas why I get this error in 12c?

正确答案  按照 DK2010  打开 Jun 26, 2013 1:56 PM

Hi,

 

Its New, so I think You have to create the PDB (plugable DB ) first and then you can create user under the PDB not under the CBD (container DB),

查看上下文中的回答
  • 正确答案1. Re: 12c: ORA-65049: creation of local user or role is not allowed in CDB$ROOT

    Hi,

     

    Its New, so I think You have to create the PDB (plugable DB ) first and then you can create user under the PDB not under the CBD (container DB),

  • 2. Re: 12c: ORA-65049: creation of local user or role is not allowed in CDB$ROOT

    Awesome. I found some good posts on PDBs. I'll dig into those after work. Thanks for the tip.

  • 3. Re: 12c: ORA-65049: creation of local user or role is not allowed in CDB$ROOT

    Only common user can be created in root container (common user is a user that starts with c##). You create common user like this:

     

    SQL> create user c##mike identified by <password> container=all;

     

    You cannot create local user in root container, nor common user in pdb.

     

    Same stands for role!

     

     

    - Zoran

  • 4. Re: 12c: ORA-65049: creation of local user or role is not allowed in CDB$ROOT

    No! You can create user in CDB$ROOT but only common user!

  • 5. Re: 12c: ORA-65049: creation of local user or role is not allowed in CDB$ROOT

    The answer for my purposes was to uncheck the box "Create as Container database" when I installed the 12c software. The old user and grant syntax works fine. I didn't need containers.

  • 6. Re: 12c: ORA-65049: creation of local user or role is not allowed in CDB$ROOT

    kc-runner wrote:

     

    Last night I installed Oracle 12C on OEL 6.4. See Installing Oracle Spatial and Graph 12c on OEL 6.4 .

     

    Today I attempted to create a test user following a syntax that worked for 11g but I received a permission error.

     

    $ sqlplus sys as sysdba

    SQL*Plus: Release 12.1.0.1.0 Production on Wed Jun 26 07:08:11 2013

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

     

    Enter password:

    Connected to:

    Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production

    With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

     

    SQL> GRANT DBA, CONNECT, RESOURCE TO STEVE IDENTIFIED BY dbl-secret-pwd;

    GRANT DBA, CONNECT, RESOURCE TO STEVE IDENTIFIED BY dbl-secret-pwd

    *

    ERROR at line 1:

    ORA-65049: creation of local user or role is not allowed in CDB$ROOT

     

    Any ideas why I get this error in 12c?

    You are getting that exception because the 'creation of local user or role is not allowed in CDB$ROOT'. 

     

    Let me be the first to say, as regards 12c, RTFM!

    http://www.oracle.com/pls/db121/homepage

    I suggest you first read chapters 17 and 18 of the Concepts doc about the new multitenant architecture of 12c.

    http://docs.oracle.com/cd/E16655_01/server.121/e17633/part_consol.htm#CHDGDBHJ

     

    The 'Common Users in a CDB section answers your question

    >

    The name of every user-created common user must begin with the characters c## or C##. (Oracle-supplied common user names do not have this restriction.)

    >

    There are two types of users in 12c: common and local. You need to understand the difference between them.

     

    There are two types of database in 12c: CDB (container DB) and PDB (pluggable DB). You need to understand the difference between them.

     

    You will not be able to learn the differences in the forums - you will need to read the documentation.

     

    The word 'you' in the following comments are meant for ANYONE that intends to start working with 12c.

     

    You will NOT be successful working with 12c unless you have read and understand the new multitenant architecture that it uses. As you discovered there are very simple things (connecting, startup/shutdown, creation of users, grants to users, etc) that just don't work the same old way anymore.

     

    If you try to just 'plow through it' without reading about it you will get an exception that you won't understand (like your 65049) and it will likely use a term (CDB$ROOT) that you won't understand. Then you will hunt all over (or worse, ask in the forums) to find out about that term.

     

    You will find it MUCH simpler if you just start  with the documentation to begin with.

     

    The odds of receiving a RTFM response for questions about 12c are going to be pretty high since there is little point in even trying to use the forum to explain an exception message like the one you posted; there is just too much background that you need and that background is in the docs.

你可能感兴趣的:(在 12cR1 数据库中创建测试用户是报 ORA-65096 错误(2c: ORA-65049: creation of local user or role is not allowed in C))