The primary use case and motivation for repository templates is to provide the Delphix administrator with control over the Oracle database parameters used during the staging phase of the VDB provisioning process. It is useful to be able to control these configuration parameters when the physical capabilities of the staging machine, such as CPU count and memory, are inferior to the physical capabilities of the machines hosting the source database repository.

The repository template is a relationship between three entities:

  • A database repository – The entity that contains database instances on host environments
  • A database container – An entity that represents all of the physical data associated with the database
  • A VDB configuration template – A list of database configuration parameter names and values that you can save on the Delphix Engine to use at a later time
    • The VDB configuration template for the temporary CDB must contain at least the following two database parameters:
  • compatible: must be set with the same value as in the dSource CDB 'compatible' parameter.
  • Enable_pluggable_database: must be set to TRUE.

During the staging process, if you do not specify a repository template, then by default the Delphix Engine will use the configuration parameters taken from the source database to configure the staged database. These parameters may not be appropriate, because the machine used for staging may be physically inferior to the machine hosting the source database.

Instead, the Delphix administrator can create a VDB configuration template, which would be appropriate for the physical machine hosting staging repository. (See Customizing Oracle VDB Configuration Settings.) Then the admin can create a repository template entry that will bind together the VDB configuration template, database repository, and database container. This instructs the Delphix Engine to use configuration parameters from the VDB configuration template whenever the database container is staged on the database repository specified, instead of the parameters on the source database.

Currently, repository template relations can only be created via the command-line interface (CLI) in the repository > template.

Switch to the repository>template context and create a new template entry.

delphix> repository template

delphix> create

delphix repository template create *> set name=RepositoryTemplate1

delphix repository template create *> set container=DBContainer1

delphix repository template create *> set repository=DBRepostory1

delphix repository template create *> set template=DBTemplate1

delphix repository template create *> commit