Database Reference
In-Depth Information
This section will give brief coverage of PDB components. Then we will focus on how to run this PDB architecture
in the Oracle RAC environment, such as configuring PDBs, managing PDBs, and accessing PDBs through services.
PDB Architecture Overview
In this PDB architecture, a PDB is a self-contained collection of schemas, schema objects, and non-schema objects
that are similar to those in the traditional database. For example, if you want to consolidate multiple Oracle EBS
databases, you can store each of these Oracle EBS applications' databases in a PDB. Another component of this
architecture is the CDB, which is a subset of the PDBs that can contain zero, one, or more PDBs. A CDB has the
following containers of the database objects.
The root named
CDB$ROOT
is a collection of schemas and objects to which all the PDBs of this CDB belong.
The data dictionary of CDB stores the metadata about each PDB.
The seed named
PDB$SEED
is a template that is used to create a new PDB. You cannot make any change on the
seed. The seed is named PDB$SEEd.
A PDB is a set of application schemas, which appears to be a traditional database.
Figure
4-8
shows the structure of a CDB that consists of five containers: root, seed and three PDBs, namely, pdb1,
pdb2, and pdb3. As shown in Figure
4-8
, each of these PDBs can be an Oracle EBS applications database which stores
application schemas such as APPs, GL, AP, HR, etc. The identical schema name issue with multiple data sets is no
longer a problem.
CDB
Root (CDB$ROOT)
pdb1
APPS
pdb2
pdb3
Seed
GL
APPS
GL
APPS
GL
(PDB$SEED)
AP HR
….
AP HR
….
AP HR
….
Figure 4-8.
Architecture of CDB with PDBs
For example, the following SQL query lists these containers of a CDB:
SQL> SELECT NAME, CON_ID, DBID, CON_UID FROM V$CONTAINERS ORDER BY CON_ID;
NAME CON_ID DBID CON_UID
-------- ---------- ---------- ----------
CDB$ROOT 1 1776735948 1
PDB$SEED 2 4057735188 4057735188
PDB1 3 3322827582 3322827582
PDB2 4 3881372142 3881372142
PDB3 5 3931156879 3931156879