CLI cookbook: linking an Oracle staging push database
This topic describes how to link an Oracle Staging Push database using the Delphix Engine command-line interface.
Prerequisites
You will need the following information:
The name of the dSource you want to create.
The group in which you want to create the dSource.
The Database Name of the Source Database whose data will be populated on this staging database.
The Repository and the Mount Base.
Linking a CDB
Procedure
Execute the database link command
delphix> database link
delphix database link>
The default linkData.type in the LinkParameters is set to ASELinkData, but you can confirm that by getting the input type. Set linkData.type to OracleLinkFromStaging for Oracle Staging Push database.
delphix database link *> get linkData.type
ASELinkData
delphix database link *> set linkData.type=OracleLinkFromStaging
delphix database link *> get linkData.type
OracleLinkFromStaging (*)
delphix database link *> ls
Properties
type: LinkParameters
name: (required)
description: (unset)
group: (required)
linkData:
type: OracleLinkFromStaging (*)
allowAutoStagingRestartOnHostReboot: (required)
containerType: (required)
customEnvVars: (unset)
databaseName: (required)
externalFilePath: (unset)
operations: (unset)
sourcingPolicy: (unset)
stagingSourceParameters: (required)
syncParameters:
type: OracleStagingPushSyncParameters
syncStrategy: (required)
uniqueName: (required)
Operations
defaults
Set the name for the CDB dSource and the group in which you want to create it.
delphix database link *> set name=exampleCDB1
delphix database link *> set group="<Group Name>"
Set the container type to ROOT_CDB for the container database.
delphix database link *> set linkData.containerType=ROOT_CDB
Set the databaseName, uniqueName, and other linkData properties. The database name here should be the same as the database name of the Source Database whose data will be populated on this staging database.
delphix database link *> set linkData.databaseName="<database_name>"
delphix database link *> set linkData.uniqueName=CDB_1_UNQ_NAME
delphix database link *> set linkData.allowAutoStagingRestartOnHostReboot=true
delphix database link *> set linkData.syncStrategy.type=OracleStagingPushSyncStrategy
Set staging source properties - mountBase, instanceName, and repository among others.
delphix database link *> edit linkData.stagingSourceParameters
delphix database link linkData.stagingSourceParameters *> ls
Properties
type: OracleStagingSourceParameters (*)
configParams: (unset)
configTemplate: (unset)
environmentUser: (unset)
instanceName: (required)
mountBase: (required)
physicalStandby: (unset)
repository: (required)
delphix database link linkData.stagingSourceParameters *> set mountBase=/mnt/staging
delphix database link linkData.stagingSourceParameters *> set instanceName=CDB_1_INSTANCE_NAME
If you are unsure of the available repositories, you can list available repositories:
elphix database link linkData.stagingSourceParameters *> /repository list
NAME VERSION ENVIRONMENT
'/u01/app/oracle/product/18.0.0.0/dbhome_1' 18.0.0.0.0 env1
'/u01/app/oracle/product/19.8.0.0/dbhome_1' 19.8.0.0.0 env2
delphix database link linkData.stagingSourceParameters *> set repository='/u01/app/oracle/product/19.8.0.0/dbhome_1'
Commit the result.
delphix database link *> commit
`ORACLE_DB_CONTAINER-45
Dispatched job JOB-129
DB_LINK job started for "<Group Name>/exampleCDB1".
Creating new TimeFlow for dSource "exampleCDB1".
Generating required scripts needed for the staging database.
Mounting datasets on the staging host "<staging host>".
Starting staging database "<database_name>" for dSource "exampleCDB1" in NOMOUNT mode.
DB_LINK job for "<Group Name>/exampleCDB1" completed successfully.
delphix>
Linking a PDB
Procedure
Execute the database link command.
delphix> database link
delphix database link>
Set linkData.type to OraclePDBLinkFromStaging for Oracle Staging Push pluggable database.
delphix database link *> set linkData.type=OraclePDBLinkFromStaging
Set the name for the PDB dSource and the group in which you want to create it.
delphix database link *> set name=examplePDB1
delphix database link *> set group="<Group Name>"
Set linkData.cdbConfig to the config of the linked staging push CDB dSource, where this PDB should be plugged into. For Oracle databases, configs are identified by the database's unique name. You can list available source configurations:
delphix database link *> /sourceconfig list
NAME REPOSITORY LINKINGENABLED
CDB_1_UNQ_NAME '/opt/ora/dexample1' true
CDB_2_UNQ_NAME '/opt/ora/dexample2' true
delphix database link *> set linkData.cdbConfig=CDB_1_UNQ_NAME
Set databaseName, syncStrategy.type and other linkData properties. The database name here should be the same as the database name of the source PDB whose data will be populated on this staging PDB.
delphix database link *> set linkData.databaseName=CDOMLOSR381EPDB1
delphix database link *> set linkData.syncStrategy.type=OracleStagingPushSyncStrategy
delphix database link *> set linkData.allowAutoStagingRestartOnHostReboot=true
Commit the result.
delphix database link *> commit
examplePDB1
Dispatched job JOB-136
DB_LINK job started for "<Group Name>/examplePDB1".
Creating new TimeFlow for dSource "examplePDB1".
Generating required scripts needed for the staging database.
Mounting datasets on the staging host "<staging_host>".
DB_LINK job for "<Group Name>/examplePDB1" completed successfully.