Thursday, July 8, 2021

CDB Fleet in Oracle Database 18c

 Oracle database 18c  introduces a new CDB Fleet feature  which allows many CDBs to be managed as one. A CDB fleet is a collection of CDBs and hosted PDBs that you can monitor and manage as one logical CDB from a centralized location.

There are two possible roles within a CDB Fleet:

  • Lead CDB: Only one CDB in the Fleet may be designated as the Lead CDB. The lead CDBis the central location for monitoring and managing all the CDBs in the fleet.
  • Member CDB: The CDBs registered with a lead CDB are called member CDBs. There can be one or more member CDB’s in a CDB fleet.

For every  member CDB,  proxy PDBs for the member CDB and its PDB(s) are automatically created in the lead CDB,.  Consequently, all the member CDBs  and their PDBs are now “visible” in the lead CDB . This enables management and monitoring of the entire estate of PDBs in the fleet, physically distributed across various CDBs, from the lead CDB.

Advantages

Reporting, monitoring, and management of the entire CDB fleet through a single interface:

  • Provides massive scalability of the underlying infrastructure
  • Reduces capital and operational costs
  • Provides greater efficiencies to the business.

Related Links:

‘STUB’ Status In DBA_PDBS

References:

https://docs.oracle.com/cd/E96517_01/newft/database-new-features-guide.pdf

https://docs.oracle.com/en/database/oracle/oracle-database/18/multi/administering-cdb-fleet.html#GUID-5951E81B-4351-4FA4-9F7B-52D2FEB0428D

‘STUB’ STATUS in DBA_PDBS

While exploring CDB  fleet in Oracle database 18c, I configured a CDB fleet having LCDB as the lead CDB and MCDB1 as a member CDB which hosts a PDB MPDB11.  As a result, proxy PDBs were automatically created for MCDB1 and MPDB11 in the lead CDB LCDB. When I queried STATUS column of DBA_PDBS  from root of LCDB, I encountered the value ‘STUB’ in  STATUS column in DBA_PDBS  as shown below:

SYS_LCDB>SELECT pdb_id, pdb_name, status, is_proxy_pdb "IS_PROXY_PDB" FROM dba_pdbs;
PDB_ID PDB_NAME STATUS IS_PROXY_PDB
---------- ---------- ------ ------------
3 LPDB1 NORMAL NO
2 PDB$SEED NORMAL NO
4 mcdb1 STUB YES
5 MPDB11 STUB YES 

As per oracle documentation (https://docs.oracle.com/en/database/oracle/oracle-database/18/refrn/DBA_PDBS.html#GUID-439126EA-A6B6-45B8-AAFA-37EE4356BBEF), the value ‘STUB’ is not listed. However, I came across an oracle tutorial showing how to configure a CDB fleet which mentions:

The STUB value in the STATUS column defines the CDB and its PDBs as members in the fleet.

On further exploring, I learnt that the proxy PDBs created for member CDBs/PDBs are not real proxies as   data files for SYSTEM, SYSAUX and UNDO tablespaces are not created locally in the lead CDB.  Consequently,  it is not possible to switch to or open the proxy PDBs in the lead CDB. Hence, they have a status of ‘STUB’ in status column of DBA_PDBS in the lead CDB.

Summary:

In a CDB fleet,

  • Proxy PDBs are automatically created for member CDBs and their PDBs in the lead CDB .
  • Proxy PDBs created for member CDBs/PDBs are not real proxies as   data files for SYSTEM, SYSAUX and UNDO tablespaces are not created locally in the lead CDB.
  • It is not possible to switch to or open the proxy PDBs in the lead CDB. Hence, they have a status of ‘STUB’ in status column of DBA_PDBS in the lead CDB.

Related Links:

CDB Fleet In Oracle Database 18c

References:

https://docs.oracle.com/en/database/oracle/oracle-database/18/qlaas/

pdb_to_apppdb.sql returns ORA-65021- A workaround

While exploring Oracle Multitenant Application Containers, I learnt that in order to convert a regular PDB  to an application PDB

  • Clone a regular PDB  into an application root
  • Connect to the cloned  PDB and execute the $ORACLE_HOME/rdbms/admin/pdb_to_apppdb.sql to convert the cloned regular PDB  to an application PDB

However, when I connected to cloned PDB remotely using @… and executed the script pdb_to_apppdb.sql, I got ORA-65021 :

SQL>@$ORACLE_HOME/rdbms/admin/pdb_to_apppdb

No comments:

Post a Comment

Database Options/Management Packs Usage Reporting for Oracle Databases 11.2 and later (Doc ID 1317265.1)

  Database Options/Management Packs Usage Report You can determine whether an option is currently in use in a database by running options_pa...