Skip to main content
Delphix

How to Force a Full Backup

Prerequisites

  • This method preserves the Source Timeflow with no impact to existing virtual databases (VDBs).
  • The Delphix filesystem (DxFS) will only write changed blocks, so no space increase.
  • Currently this is only done through the CLI
     

Use Cases

  1. Repair Source Timeflow after a corruption on Standby database Source is repaired by copying over Primary database datafiles. This includes NOLOGGING "corruptions".
  2. Seed the initial full copy for block change tracking (BCT), when BCT is enabled after the Source Timeflow is created.

Procedure

DE 4.1.0.0 - 5.0.x

In versions 4.1 and newer this can be accomplished through the CLI:

ssh delphix_admin@yourengine
delphix > database
delphix database > select <dSource>
delphix database "dSource" > sync
delphix database "dSource" sync * > set forceFullBackup=true
delphix database "dSource" sync * > commit

DE 4.0.6.1 and older

1. Locate Delphix Toolkit on Source (Primary or Standby)

  1. Manage->Environments
  2. Choose Source Environment
  3. Choose Environment Details Tab
    1. RAC: Select a Cluster Node
  4. Read Toolkit Path

2. Create command modifier for RMAN startBackup.sh script

This is a SED script that modifies our backup command to run a FULL or LEVEL 0 instead of an INCREMENTAL. It must be placed in the same directory as the startBackup.sh script to be effective.

For a RAC Source the SED script must be placed in toolkit directories on *all* nodes.

ssh to Source Host

$ cd /oracle/admin/DMPROD/Delphix/DelphixTK/

$ find . -name startBackup.sh

./Delphix_4234d1d5_9359_f961_de0a_d05660c67aaa_delpadm_host/toolkits/link/oracle/common/startBackup.sh

$ cd Delphix_4234d1d5_9359_f961_de0a_d05660c67aaa_delpadm_host/toolkits/link/oracle/common/

Create command modifier SED script.
Note: Please add only lines between <SNIP> lines below. DO not include the <SNIP> line.

 

$ vi delphix_rman_editor.sed

------------------------------ <SNIP> -------------------------------------

s/INCREMENTAL *FROM *SCN [0-9][0-9]*//

s/INCREMENTAL *LEVEL *1/INCREMENTAL LEVEL 0/

s/FOR *RECOVER *OF *TAG *'[A-Za-z0-9]\+'//

------------------------------ </SNIP> ------------------------------------

3.  Disable SnapSync for other Source DBs on this Host

The same toolkit will be used to invoke initial/incremental backups for all Source DBs located on this host. We do not want to force a full backup on other sources. 

4. Invoke SnapSync on desired Source

This "forced full backup" will take longer than an incremental backup but will be shorter in duration than the full backup at data-source creation.

5. When SnapSync is in progress, remove command modifier SED script

Check GUI "Active Jobs" to ensure progress is at least 1%

$ rm delphix_rman_editor.sed
 

6. Re-enable SnapSync for other Source DBs on this Host

7. Invoke SnapSync on desired Source (again)

8. (Optional) Verify RMAN backup command issued

$ cd /oracle/admin/DMPROD/Delphix/DelphixTK/

$ find . -name SNL.*

$ cd Delphix_4234d1d5_9359_f961_de0a_d05660c67aaa_delpadm_host/toolkits/link/oracle/linux/x86/lib64/
 
Note: Latest SNL.* trace file has the backup command that was issued

Related Articles:

SnapSync FAQ