Hi All,
From busy schedule i got chance to get understanding.
From Oracle Database 12c Release 1, the concept of multitenant environment has been introduced. The multitenant architecture enables an Oracle database to function as a multitenant container database (CDB) that includes zero, one, or many customer-created pluggable databases (PDBs). A PDB is a portable collection of schemas, schema objects, and nonschema objects that appears to an Oracle Net client as a non-CDB. All Oracle databases prior to Oracle Database 12 were non-CDBs.
A CDB includes the following components:
Also from Oracle Database 12c Rel 2 oracle introduce Oracle Enterprise Manager Express instead of oracle enterprise manager (EM) we used earlier.
Will discuss on both here.
1. How could i know installed oracle 12c database is CDB or Non-CDB ?
Login to database using SQL plus and execute below query.
select name,cdb,con_id from v$database;
If your database Non-CDB, will get result similar to below
If your database CDB, will get result similar to below
In CDB & non-CDB database instance details remains same.
SQL> select instance_name,status,con_id from v$instance;
INSTANCE_NAME STATUS CON_ID
---------------- ------------ ----------
orcl OPEN 0
But Oracle Oracle Enterprise Manager Express show CDB and PDB details differently.
Normally you login with SQLPlus default get authenticated in CDB
SQL> select dbms_xdb_config.gethttpsport() from dual;
DBMS_XDB_CONFIG.GETHTTPSPORT()
------------------------------
5500
SQL> select con_id,name,open_mode from v$pdbs;
CON_ID NAME OPEN_MODE
---------- ------------------------------ ----------
2 PDB$SEED READ ONLY
3 PDBORCL MOUNTED
SQL> alter pluggable database pdborcl open;
Pluggable database altered.
SQL> select con_id,name,open_mode from v$pdbs;
CON_ID NAME OPEN_MODE
---------- ------------------------------ ----------
2 PDB$SEED READ ONLY
3 PDBORCL READ WRITE
SQL> alter session set container=pdborcl;
Session altered.
SQL> select dbms_xdb_config.gethttpsport() from dual;
DBMS_XDB_CONFIG.GETHTTPSPORT()
------------------------------
0
SQL> exec dbms_xdb_config.sethttpsport(5501);
PL/SQL procedure successfully completed.
SQL>
https://oracle-base.com/articles/12c/multitenant-startup-and-shutdown-cdb-and-pdb-12cr1
http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/2day_dba/12cr1db_ch3emexp/12cr1db_ch3emexp.html#overview
http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/2day_dba/12cr1db_ch6storage/12cr1db_ch6storage.html
http://www.slideshare.net/BijuThomas3/create-noncdb-traditional-oracle-database-12c-on-windows
From busy schedule i got chance to get understanding.
From Oracle Database 12c Release 1, the concept of multitenant environment has been introduced. The multitenant architecture enables an Oracle database to function as a multitenant container database (CDB) that includes zero, one, or many customer-created pluggable databases (PDBs). A PDB is a portable collection of schemas, schema objects, and nonschema objects that appears to an Oracle Net client as a non-CDB. All Oracle databases prior to Oracle Database 12 were non-CDBs.
A CDB includes the following components:
-
Root
The root, namedCDB$ROOT
, stores Oracle-supplied metadata and common users. An example of metadata is the source code for Oracle-supplied PL/SQL packages. A common user is a database user known in every container. A CDB has exactly one root. -
SeedThe seed, named
PDB$SEED
, is a template that you can use to create new PDBs. You cannot add objects to or modify objects in the seed. A CDB has exactly one seed. -
PDBsA PDB appears to users and applications as if it were a non-CDB. For example, a PDB can contain the data and code required to support a specific application. A PDB is fully backward compatible with Oracle Database releases before Oracle Database 12c.
Also from Oracle Database 12c Rel 2 oracle introduce Oracle Enterprise Manager Express instead of oracle enterprise manager (EM) we used earlier.
Will discuss on both here.
1. How could i know installed oracle 12c database is CDB or Non-CDB ?
Login to database using SQL plus and execute below query.
select name,cdb,con_id from v$database;
If your database Non-CDB, will get result similar to below
If your database CDB, will get result similar to below
In CDB & non-CDB database instance details remains same.
SQL> select instance_name,status,con_id from v$instance;
INSTANCE_NAME STATUS CON_ID
---------------- ------------ ----------
orcl OPEN 0
But Oracle Oracle Enterprise Manager Express show CDB and PDB details differently.
Normally you login with SQLPlus default get authenticated in CDB
SQL> select dbms_xdb_config.gethttpsport() from dual;
DBMS_XDB_CONFIG.GETHTTPSPORT()
------------------------------
5500
SQL> select con_id,name,open_mode from v$pdbs;
CON_ID NAME OPEN_MODE
---------- ------------------------------ ----------
2 PDB$SEED READ ONLY
3 PDBORCL MOUNTED
SQL> alter pluggable database pdborcl open;
Pluggable database altered.
SQL> select con_id,name,open_mode from v$pdbs;
CON_ID NAME OPEN_MODE
---------- ------------------------------ ----------
2 PDB$SEED READ ONLY
3 PDBORCL READ WRITE
SQL> alter session set container=pdborcl;
Session altered.
SQL> select dbms_xdb_config.gethttpsport() from dual;
DBMS_XDB_CONFIG.GETHTTPSPORT()
------------------------------
0
SQL> exec dbms_xdb_config.sethttpsport(5501);
PL/SQL procedure successfully completed.
SQL>
https://oracle-base.com/articles/12c/multitenant-startup-and-shutdown-cdb-and-pdb-12cr1
http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/2day_dba/12cr1db_ch3emexp/12cr1db_ch3emexp.html#overview
http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/2day_dba/12cr1db_ch6storage/12cr1db_ch6storage.html
http://www.slideshare.net/BijuThomas3/create-noncdb-traditional-oracle-database-12c-on-windows