In the Oracle multitenant architecture, there are two main database types: container databases (CDBs) and pluggable databases (PDBs).
Source CDBs containing Application Container PDBs are currently not supported.
The process of creating virtual pluggable databases is similar to creating non-multitenant virtual databases, with a few additional steps necessary in the multitenant architecture.
Delphix supports provisioning Oracle Virtual Pluggable Databases (vPDBs) in two configurations:
- Linked Container Databases (Linked CDBs): Physical CDBs that have been previously provided by the Oracle DBA on the target environment to which Delphix may provision vPDBs. Physical CDBs must be configured and set up specifically for use by Delphix.
- Virtual Container Databases (vCDBs): vCDBs are created by Delphix during the provision workflow for vPDBs. vCDBs currently only support one vPDB per container.
Prerequisites for Provisioning a vPDB to a Linked CDB
There must be a target environment that has an Oracle installation compatible with the Oracle installation of the source CDB and the source PDB. The following database requirements are needed to provision the vPDB to a linked CDB. For more information, see Requirements for Oracle Hosts and Databases.
- Recommend autodiscovery so that the linked CDB can be found. Otherwise, the linked CDB must be manually discovered before provisioning.
- Linked CDB must be running
- Linked CDB must have a database user created
- Linked CDB must be in ARCHIVELOG mode
- Linked CDB should be using Block Change Tracking (BCT)
- LogSync must be enabled for the Linked CDB.
Provisioning a vPDB to a Linked CDB
For provisioning a vPDB into a Linked CDB, the source CDB and the target CDB must meet the following compatibility requirements:
- The value of the COMPATIBLE parameter in the source CDB must be less than or equal to the value of the COMPATIBLE parameter in the target CDB
- They must have the same endianness
- They must have compatible character sets and national character sets
- They must have the same set of database options installed. For example, if the source CDB is a real application cluster (RAC) database, the target CDB must be a RAC database.
Setting Up Auxillary CDB Parameters
During a vPDB provisioning into a Linked CDB, the Delphix Engine creates a temporary CDB instance on the target environment to recover the vPDB to a consistent state. This temporary CDB will be automatically deleted after the vPDB is provisioned successfully. By default, this temporary CDB is configured to have the same init parameters as the source database. To manage the configuration of the temporary CDB, you must set up Repository Templates for Oracle Databases during provisioning.
Provisioning a vPDB to a vCDB
When provisioning a vPDB into a vCDB:
- Delphix will provision a virtual CDB (vCDB) from the source CDB to host the vPDB you are about to create.
- There is no need to set up a repository template, as this provision workflow allows a user to directly specify a VDB configuration template, or set individual database parameters.
- In the Datasets panel, select an Oracle PDB dSource or a previously provisioned vPDB.
- From the Timeflow tab, select a snapshot or point in time to provision from.
- Once the Provision wizard is open, you can either provision with a:
- Target Linked CDB: Select an existing container database as the provision target CDB from the Container Database drop-down menu of CDBs on that environment.
- Target vCDB: Select the Create a New Container Database checkbox. This will create a new vCDB object in that environment with this new vPDB plugged into it.
You can also reuse the Delphix toolkit directory, which already exists as the Mount Base, or create a new writable directory in the target environment with the correct permissions and use that as the Mount Base.
- Enter the vCDB Name, Database Unique Name, and Database Name for the vCDB you are about to provision.
- Select the Configure vCDB Parameters checkbox if you want to use a VDB Configuration Template. See Customizing Oracle VDB Configuration Settings.
For more information, see Customizing VDB File Mappings and Customizing Oracle VDB Environment Variables.
Select a Retention Policy for the vCDB, if you are provisioning a vCDB.
Select the Mask this vPDB checkbox if you want to mask, and select the masking job to be applied.