Skip to main content
Delphix

Using Repository Templates During Virtual Pluggable Database Provision to Control SGA Size in the Auxiliary Container Database (KBA1756)

 

 

Applicable Delphix Versions

Major Release

All Sub Releases

5.2 5.2.2.0, 5.2.2.1, 5.2.3.0

5.1

5.1.0.0, 5.1.1.0, 5.1.2.0, 5.1.3.0, 5.1.4.0, 5.1.5.0, 5.1.5.1, 5.1.6.0, 5.1.7.0, 5.1.8.0, 5.1.8.1, 5.1.9.0

Issue

During provisioning of virtual pluggable databases (VPDB's), Delphix will establish an auxiliary container database in which it will perform recovery of the VPDB, the VPDB is then unplugged from this temporary container database and plugged into the the destination container database.  By default this auxiliary container database will have its memory structures sized based around the size of the dSource container database.  This size may cause issues for the target host if resources allocated in dSource environment far outweigh those in the target VDB host environment.  Controlling the SGA sizing in the auxiliary container database is performed through what are known as repository templates.  The repository template essentially override the default behaviour and are used to set the desired Oracle database parameters you would like to see used in the auxiliary database during the provisioning process.

Resolution

The process to perform the provisioning of a VPDB using a repository template as a part of the process is the following:

1. Create a VDB configuration template using the Delphix GUI called aux_cdb_params with the following parameters set as a bare minimum.

compatible = 12.1.0.2
enable_pluggable_database = true
sga_target = 1551892480

The parameters required may differ given a specfic environments requirements from this but this should allow the startup of the auxiliary database.

 

2. Create a repository template called aux_cdb_templ using the CLI

delphix repository template> create
delphix repository template create *> set name=aux_cdb_templ
delphix repository template create *> set container=PDB12C1
delphix repository template create *> set repository=OELC9/'/u01/app/oracle/12.1'
delphix repository template create *> set template=aux_cdb_params
delphix repository template create *> commit

delphix repository template 'pb12c1rt'> ls
Properties
    type: SourceRepositoryTemplate
    name: aux_cdb_templ
    container: PDB12C1
    reference: REPOSITORY_TEMPLATE_REF-4
    repository: OELC9/'/u01/app/oracle/12.1'
    template: aux_cdb_params

Where:

name is what you want the template name to be.
container is the source VPDB.
repository is the target environment/ORACLE_HOME that the CDB target is running from.
template is the name of the database template created in the GUI.

 

3. Provision a virtual pluggable database (VPDB) via the Delphix GUI using the source PDB defined as the container in the repository template and provision the VPDB to the target environment defined by the repository (target environment/Oracle Home combination) in the repository template.