Multisection Image Copies and Incremental Backups
In previous releases it was only possible to perform multisection backups using conventional backup sets. In Oracle 12c, it is also possible to use multisection backups for image copy and incremental backups.
In all three cases, multisection backups are triggered by the addition of the SECTION SIZE clause of the BACKUP command, which indicates the size of the fragment to be processed by each slave. If the file size is smaller than the SECTION SIZE value, a multisection backup of that file is not performed.
# Backup set. BACKUP SECTION SIZE 400M DATABASE; # Image copy. BACKUP AS COPY SECTION SIZE 400M DATABASE; # Incremental and incrementally updated image copy. BACKUP INCREMENTAL LEVEL 1 SECTION SIZE 400M DATABASE; BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'mydb_incr_backup' SECTION SIZE 400M DATABASE;
Network-Enabled RESTORE
Restore and recovery operations can be performed directly over a network without the need to manually transfer files. This is done using the FROM SERVICE clause, which is used to specify an entry in the "tnsnames.ora" file pointing to the service the data should be sourced from. The documentation discusses two scenarios where this might be useful.
Using a file from a physical standby database to restore a missing/damaged file in the primary database.
RESTORE DATAFILE '/u01/oradata/primary/hr.dbf' FROM SERVICE standby_tns;
Refreshing a physical standby database from a primary database. This performs an incremental backup of the primary database and uses it to refresh the standby database.
RECOVER DATABASE FROM SERVICE primary_db;
There are some additional post-recovery steps to take when doing a network refresh of a standby database, described here.
RMAN Command-Line Interface Enhancements
The command line interface of RMAN has been simplified with respect to using SQL. Previously, SQL commands had to start with the SQL keyword and needed to be enclosed by quotes. In Oracle 12c this is no longer necessary for most commands. You also have the option of using the SQL keyword, without quoting the subsequent command.
# Pre-12c SQL "ALTER SYSTEM SWITCH LOGFILE"; # 12c : Using SQL keyword. SQL ALTER SYSTEM SWITCH LOGFILE; # 12c : No SQL keyword. ALTER SYSTEM SWITCH LOGFILE;
You can also do queries in a similar way to SQL*Plus.
RMAN> SELECT name FROM v$database; NAME --------- CDB1 RMAN>
The SQL commands available from RMAN directly are described here.
Storage Snapshot Optimization
Oracle 12c supports backups taken using 3rd party storage shapshots, without the need to put the database in backup mode. There are some requirements the storage must adhere to for this functionality to be supported, listed here.
Recovering using a snapshot performed in this manner requires the use of the SNAPSHOT TIME clause.
RECOVER DATABASE UNTIL TIME '04/25/2016 12:00:00' SNAPSHOT TIME '04/25/2016 13:00:00';




