Restoring Objects to an Alternate Cluster
You can use the restore task to copy objects from one database to another. You might do this to "promote" tables from a development environment to a production environment, for example. All restrictions described in Restoring Individual Objects from a Full or Object-Level Backup apply when restoring to an alternate cluster.
To restore to an alternate database, you must make changes to a copy of the configuration file that was used to create the backup. The changes are in the [Mapping] and [NodeMapping] sections. Essentially, you create a configuration file for the restore operation that looks to vbr
like a backup of the target database, but it actually describes the backup from the source database. See Restore Object from Backup to an Alternate Cluster (object_restore_to_other_cluster.ini) for an example configuration file.
The following example uses two databases, named source and target. The source database contains a table named sales. The following source_snapshot.ini configuration file is used to back up the source database:
[Misc] snapshotName = source_snapshot restorePointLimit = 2 objectRestoreMode = createOrReplace [Database] dbName = source dbUser = dbadmin dbPromptForPassword = True [Transmission] [Mapping] v_source_node0001 = 192.168.50.168:/home/dbadmin/backups/
The target_snapshot.ini file starts as a copy of source_snapshot.ini. Because the [Mapping] section describes the database that vbr
operates on, we must change the node names to point to the target nodes. We must also add the [NodeMapping] section and change the database name:
[Misc] snapshotName = source_snapshot restorePointLimit = 2 objectRestoreMode = createOrReplace [Database] dbName = target dbUser = dbadmin dbPromptForPassword = True [Transmission] [Mapping] v_target_node0001 = 192.168.50.151:/home/dbadmin/backups/ [NodeMapping] v_source_node0001 = v_target_node0001
As far as vbr
is concerned, we are restoring objects from a backup of the target database. In reality, we are restoring from the source database.
The following command restores the sales table from the source backup into the target database:
$ vbr --task restore --config-file target_snapshot.ini --restore-objects sales Starting object restore of database target. Participating nodes: v_target_node0001. Objects to restore: sales. Enter vertica password: Restoring from restore point: source_snapshot_20160204_191920 Loading snapshot catalog from backup. Extracting objects from catalog. Syncing data from backup to cluster nodes. [==================================================] 100% Finalizing restore. Restore complete!