This topic describes how to perform:

  • V2P operation from a snapshot or a Timeflow point belonging to a multitenant pluggable Oracle database, or

  • Incremental V2P operation on a multitenant Oracle virtual pluggable database (vPDB)

to a physical pluggable container database stored on an Oracle Automatic Storage Management (ASM) diskgroup or a Physical Filesystem using the Delphix Engine command-line interface. The V2P operation provisions a temporary vPDB from the snapshot or Timeflow point as specified in the CLI parameters and then performs an in-place conversion of the temporary vPDB to a physical database. This temporary vPDB is destroyed at the end of the V2P operation.

Prerequisites

You must have the following configuration before you start the V2P operation:

  • For the V2P operation to ASM – the target Data diskgroup, or the diskgroup that will contain all the database files, or in case of the V2P operation to a physical filesystem – the filesystem path where all the datafiles will be exported.

  • In case of the V2P operation to a physical filesystem, if a dataDirectory is provided, both the delphix_os user and the Oracle software owner user (typically Oracle) must have full access to the directory.

  • The base mount point on the target server where the temporary vPDB data should be mounted.

  • Database name for the physical pluggable database.

  • A linked container database on the target system. This will be where the physical pluggable database will be plugged into, on the target system.

  • The snapshot or Timeflow point of an Oracle multitenant dSource or a vPDB from which the V2P operation will be initiated. This will be referenced as the "container" in the Timeflow point parameters in step 6 below. You can run these commands to get the list of snapshots or Timeflow ranges:

    snapshot list database=dexample
    timeflow "dexample" timeflowRanges; 
    commit
  • Optionally, the target ASM disk group for redo log files (in case of the V2P operation to ASM), number of RMAN channels and the RMAN file section size.

In the example CLI V2P operation detailed below, the following configuration parameters are being passed:

  • The snapshot, used for the V2P operation to ASM, belongs to the PDB "CDOMLOTGAS2FPDB1".

  • The database name for the physical pluggable database is "asmpdb".

  • The container database to which the physical pluggable database will be plugged into, at the end of the V2P operation, is "CDOMLOTGAS2F”.

  • The target ASM data diskgroup is "+DATA".

  • The base mount point on the target server is "/mnt/provision".

Procedure

  1. Execute the database export command.

    delphix> database export
  2. Set the database export parameters type.

    delphix database export *> set type=OraclePDBExportParameters
  3. Set the storage strategy:

    1. For the V2P operation to ASM:

      1. Set the storage strategy type to OracleExportASMStorageStrategy.

        delphix database export *> set storageStrategy.type=OracleExportASMStorageStrategy
      2. Set the default target data diskgroup in asmLayout.

        delphix database export *> set storageStrategy.asmLayout.type=OracleASMLayout
        delphix database export *> set storageStrategy.asmLayout.defaultDataDiskgroup=+DATA
      redoDiskgroup parameter is not required for the PDB V2P operation.
    2. For the V2P operation to Physical Filesystem:

      1. Set the storage strategy type to OracleExportFilesystemStorageStrategy.

        delphix database export *> set storageStrategy.type=OracleExportFilesystemStorageStrategy
      2. Set the data directory in the filesystemLayout object to the location on the filesystem where all the datafiles should be exported.

        delphix database export *> edit storageStrategy.filesystemLayout
        delphix database export storageStrategy.filesystemLayout *> set type=OracleFilesystemLayout
        delphix database export storageStrategy.filesystemLayout *> set dataDirectory=/path/to/exported/datafiles
        delphix database export storageStrategy.filesystemLayout *> back
      • All the properties in the storageStrategy.filesystemLayout object are optional and only dataDirectory is applicable here.
      • If the datafile location is not specified via dataDirectory property, the default location for the exported datafiles is under db_create_file_dest of the target CDB.

  4. Set the transfer strategy type and base mount point.

    delphix database export *> set transferStrategy.type=OracleExportPDBTimeflowPointTransferStrategy
    delphix database export *> set transferStrategy.mountBase=/mnt/provision
  5. For Incremental V2P operation, set the finalization strategy type and optionally set incremental export parameters (which have preset defaults)

    delphix database export *> set finalizationStrategy.type=OracleExportIncrementalFinalizationStrategy 
    delphix database export *> edit finalizationStrategy.incrementalExportParameters 
    delphix database export finalizationStrategy.incrementalExportParameters *> set backupFrequencyMinutes=30 
    delphix database export finalizationStrategy.incrementalExportParameters *> set rmanChannelsForIncrementalBackup=8 
    delphix database export finalizationStrategy.incrementalExportParameters *>set rmanFilesPerSetForIncrementalBackup=5 
    delphix database export finalizationStrategy.incrementalExportParameters *> set rmanFileSectionSizeInGbForIncrementalBackup=0 
    delphix database export finalizationStrategy.incrementalExportParameters *> back 
  6. Set the source config type as PDB config, and set the database name, database unique name and the linked container database where the resulting physical PDB will be plugged into.

    delphix database export *> edit transferStrategy.sourceConfig
    delphix database export transferStrategy.sourceConfig *> set type=OraclePDBConfig
    delphix database export transferStrategy.sourceConfig *> set databaseName=asmpdb
    delphix database export transferStrategy.sourceConfig *> set cdbConfig=CDOMLOTGAS2F
    delphix database export transferStrategy.sourceConfig *> back
  7. Set the Timeflow point parameters. In the below example, the latest Timeflow point for the pluggable database is being specified for the V2P operation.

    delphix database export *> edit transferStrategy.timeflowPointParameters
    delphix database export transferStrategy.timeflowPointParameters *> set type=TimeflowPointSemantic
    delphix database export transferStrategy.timeflowPointParameters *> set container=CDOMLOTGAS2FPDB1
    delphix database export transferStrategy.timeflowPointParameters *> set location=LATEST_POINT
    delphix database export transferStrategy.timeflowPointParameters *> back
    The parameter values in steps 2 to 7 above are just examples. Replace the appropriate parameter values to match your needs.
  8. Optionally set the following parameters:

    1. Number of RMAN channels. Default value for the RMAN channels is 8.

    2. RMAN file section size. Default value is 0 (i.e. RMAN file section size is not set).

      delphix database export *> set transferStrategy.rmanChannels=10
      delphix database export *> set transferStrategy.rmanFileSectionSizeInGb=64
    The above values are just examples. Replace the redo diskgroup, number of RMAN channels and RMAN file section size to match your needs. For more details on RMAN channels and RMAN file section size, refer to Performance tuning considerations for Oracle databases with bigfile tablespaces page.
  9. For V2P/Incremental V2P of a TDE-enabled pluggable database, set the additional parameters for the applicable TDE keystore config type. The below example shows parameters for File-based TDE:

    delphix database export *> set transferStrategy.parentTdeKeystorePath=/path/to/keystore 
    delphix database export *> set transferStrategy. parentTdeKeystorePassword=password 
    delphix database export *> set transferStrategy.tdeExportedKeyFileSecret=secret 
  10. Check that all the settings you require are in place using the ls command.

    delphix database export *> ls
    Properties
        type: OraclePDBExportParameters (*)
        finalizationStrategy: (unset)
        storageStrategy:
            type: OracleExportASMStorageStrategy (*)
            asmLayout:
                type: OracleASMLayout (*)
                defaultDataDiskgroup: +DATA (*)
                redoDiskgroup: (unset)
        transferStrategy:
            type: OracleExportPDBTimeflowPointTransferStrategy (*)
            configParams: (unset)
            mountBase: /mnt/provision (*)
            parentTdeKeystorePassword: (unset)
            parentTdeKeystorePath: (unset)
            rmanChannels: 8 (*)
            rmanFileSectionSizeInGb: 0 (*)
            sourceConfig:
                type: OraclePDBConfig (*)
                cdbConfig: CDOMLOTGAS2F (*)
                databaseName: asmpdb (*)
                environmentUser: (unset)
                linkingEnabled: true (*)
                nonSysCredentials: (unset)
                nonSysUser: (unset)
                repository: (unset)
                services: (unset)
            tdeExportedKeyFileSecret: (unset)
            tdeKeyIdentifier: (unset)
            timeflowPointParameters:
                type: TimeflowPointSemantic (*)
                container: CDOMLOTGAS2FPDB1 (*)
                location: LATEST_POINT (*)
    delphix database export *> 

    Or, for Incremental V2P:

    delphix database export *> ls 
    Properties 
        type: OraclePDBExportParameters (*) 
        finalizationStrategy: 
            type: OracleExportIncrementalFinalizationStrategy (*) 
            incrementalExportParameters: 
                type: OracleIncrementalExportParameters (*) 
                backupFrequencyMinutes: 30 (*) 
                rmanChannelsForIncrementalBackup: 8 (*) 
                rmanFileSectionSizeInGbForIncrementalBackup: 0 (*) 
                rmanFilesPerSetForIncrementalBackup: 5 (*) 
        storageStrategy: 
            type: OracleExportASMStorageStrategy (*) 
            asmLayout: 
                type: OracleASMLayout (*) 
                defaultDataDiskgroup: +DATA (*) 
                redoDiskgroup: (unset) 
            ignoreInsufficientSpaceCheck: false (*) 
        transferStrategy: 
            type: OracleExportPDBTimeflowPointTransferStrategy (*) 
            configParams: (unset) 
            invokeDatapatch: (unset) 
            mountBase: /mnt/provision (*) 
            parentPdbTdeKeystorePassword: (unset) 
            parentPdbTdeKeystorePath: (unset) 
            parentTdeKeystorePassword: ****** (*) 
            parentTdeKeystorePath: /path/to/keystore (*) 
            rmanChannelsForExport: 8 (*) 
            rmanFileSectionSizeInGbForExport: 0 (*) 
            sourceConfig: 
                type: OraclePDBConfig (*) 
                cdbConfig: CDOMLOTGAS2F (*) 
                databaseName: asmpdb (*) 
                environmentUser: (unset) 
                linkingEnabled: true (*) 
                nonSysCredentials: (unset) 
                nonSysUser: (unset) 
                repository: target_env/'/u01/app/oracle/product/19.14.0.0/dbhome_1' (*) 
                services: (unset) 
            targetPdbTdeKeystorePassword: (unset) 
            tdeExportedKeyFileSecret: ****** (*) 
            tdeKeyIdentifier: (unset) 
            timeflowPointParameters: 
                type: TimeflowPointSemantic (*) 
                container: STANDIN_PROD_PDB (*) 
                location: LATEST_POINT (*) 
    delphix database export *> 
  11. Commit the operation in the CLI.

    delphix database export *> commit
        Dispatched job JOB-72
        DB_EXPORT job started for "CDOMLOTGAS2FPDB1".
        Provisioning temporary virtual database "asmpdb" from the chosen snapshot or point-in-time for performing V2P operation.
        Provisioning of temporary virtual database "asmpdb" completed successfully.
        Starting V2P of database "asmpdb" at "Untitled/CDOMLOTGAS2FPDB1 time: Wed Sep 20 14:00:40 PDT 2023" to location "+DATA" on target environment "ora1914-asm-tgt".
        Generating V2P scripts.
        Setting up environment map.
        Setting up database for V2P.
        Performing backup-as-copy for V2P operation.
        Performing switch-to-copy for V2P operation.
        Finalizing the V2P operation.
        Disabling virtual database "asmpdb".
        Unexporting storage containers.
        Virtual database "asmpdb" disabled.
        The V2P job for virtual source 'ORACLE_VIRTUAL_PDB_SOURCE-3' with name 'asmpdb' got COMPLETED. Started cleanup for the same. Monitor job '<JOB-82>' and take suggested action if the cleanup fails.
        DB_EXPORT job for "CDOMLOTGAS2FPDB1" completed successfully.

    Or, for Incremental V2P:

    delphix database export *> commit 
        Dispatched job JOB-2162 
        DB_INCREMENTAL_EXPORT job started for "STANDIN_PROD_PDB". 
        Provisioning temporary virtual database "asmpdb" from the chosen snapshot or point-in-time for performing V2P operation. 
        Provisioning of temporary virtual database "asmpdb" completed successfully. 
        Setting up source database "STANDIN_PROD_PDB" for Incremental V2P. 
        Starting background workers for Incremental V2P of source database "STANDIN_PROD_PDB". 
        Starting V2P of database "asmpdb" at "Untitled/STANDIN_PROD_PDB time: Tue Dec 16 03:58:40 PST 2025" to location "+DATA" on target environment "target_env". 
        Generating V2P scripts. 
        Setting up environment map. 
        Setting up database for V2P operation. 
        Performing backup-as-copy for V2P operation. 
        Performing switch-to-copy for V2P operation. 
        Finalizing the V2P operation. 
        The initial V2P job for virtual source "asmpdb" finished with status "COMPLETED". 
        Incremental V2P operation is active for virtual source "STANDIN_PROD_PDB" and required background workers are already running. Monitor the Incremental V2P status by querying the latest copy of the virtual source object "ORACLE_VIRTUAL_PDB_SOURCE-186". Also check any faults on the source database "STANDIN_PROD_PDB" and take appropriate action before finalizing the V2P operation. 
        DB_INCREMENTAL_EXPORT job for "STANDIN_PROD_PDB" completed successfully. 
Last updated
Oct 9, 2026