时间:2021-07-01 10:21:17 帮助过:37人阅读
Story about CDB and PDB Oracle12c has a new feature and definition of CDB and PDB. If you first use 12c you will get confused like me. So that is necessary to know some basic definitions before you start. Oracle's official document is alwa
Oracle12c has a new feature and definition of CDB and PDB. If you first use 12c you will get confused like me. So that is necessary to know some basic definitions before you start. Oracle's official document is always the best material.
What is CBD and PDB and why introduce them?
[oracle@ol65 ~]$ sqlplus /nolog SQL*Plus: Release 12.1.0.2.0 Production on Mon Oct 27 23:07:56 2014 Copyright (c) 1982, 2014, Oracle. All rights reserved. SQL> conn sys@orcl as sysdba Enter password: Connected. SQL> sho con_name CON_NAME ------------------------------ CDB$ROOT SQL>** sho con_name - show current container name. Root container is always called CDB#ROOT.
SQL> sho pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PDBORCL MOUNTED SQL>
You must have sysdba privilege.
SQL> alter pluggable database PDBORCL open; Pluggable database altered. SQL> sho pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PDBORCL READ WRITE NO SQL>
SQL> sho con_name CON_NAME ------------------------------ CDB$ROOT SQL> alter session set container=PDBORCL; Session altered. SQL> sho con_name CON_NAME ------------------------------ PDBORCL SQL>Now you login a PDB. Now you can create a new user as you operate a Oracle DB before 12c. This user is not common user. It's a user for this PDB. You also can understand PDB as a general DB of the version before 12c.
SQL> conn sys as sysdba Enter password: Connected. SQL> alter pluggable database PDBORCL close immediate; Pluggable database altered. SQL>
Edit config file /$ORACLE_HOME/network/admin/tnsnames.ora.
ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl.localdomain) ) ) PDBORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = pdborcl.localdomain) ) )
Save and quit. Go to open this PDB again. Now you can access PDBORCL by service name.
[oracle@ol65 admin]$ sqlplus sys@pdborcl as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Tue Oct 28 00:08:52 2014 Copyright (c) 1982, 2014, Oracle. All rights reserved. Enter password: Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options SQL>And the most importance is that now you are able to remotely connect this PDB!
Now you application can use this DB as well.