Exploring options of using RMAN configure to simplify backup
I am a simple person who likes simple things, especially RMAN backup implementation.
I have yet to understand why RMAN backup implementation does not use configure command, and if you have a good explanation, please share.
Examples for RMAN configure command
configure device type disk parallelism 2 backup type to compressed backupset; configure channel device type disk format '/oradata/backup/%d_%I_%T_%U' maxopenfiles 1; configure channel 1 device type disk format '/oradata/backup1/%d_%I_%T_%U' maxopenfiles 1; configure archivelog deletion policy to backed up 2 times to disk; configure backup optimization on;
Do you know if backup is using parallelism?
Where is the backup to?
Is the backup to tape?
RMAN> show all; RMAN configuration parameters for database with db_unique_name SAN are: CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default CONFIGURE BACKUP OPTIMIZATION ON; CONFIGURE DEFAULT DEVICE TYPE TO DISK; CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/oradata/backup/%d_%F.ctl'; CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO COMPRESSED BACKUPSET; CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/oradata/backup/%d_%I_%T_%U' MAXOPENFILES 1; CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/oradata/backup1/%d_%I_%T_%U' MAXOPENFILES 1; CONFIGURE MAXSETSIZE TO UNLIMITED; # default CONFIGURE ENCRYPTION FOR DATABASE OFF; # default CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DISK; CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_san.f'; # default RMAN>
Simple RMAN script.
set echo on; connect target; show all; backup incremental level 0 check logical database filesperset 1 tag "fulldb" plus archivelog filesperset 8 tag "archivelog";
Simple RMAN run.
$ rman @simple.rman Recovery Manager: Release 11.2.0.4.0 - Production on Thu Jul 24 11:12:19 2014 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. RMAN> set echo on; 2> connect target; 3> show all; 4> backup incremental level 0 check logical database filesperset 1 tag "fulldb" 5> plus archivelog filesperset 8 tag "archivelog"; 6> echo set on connected to target database: SAN (DBID=2792912513) using target database control file instead of recovery catalog RMAN configuration parameters for database with db_unique_name SAN are: CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default CONFIGURE BACKUP OPTIMIZATION ON; CONFIGURE DEFAULT DEVICE TYPE TO DISK; CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/oradata/backup/%d_%F.ctl'; CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO COMPRESSED BACKUPSET; CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/oradata/backup/%d_%I_%T_%U' MAXOPENFILES 1; CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/oradata/backup1/%d_%I_%T_%U' MAXOPENFILES 1; CONFIGURE MAXSETSIZE TO UNLIMITED; # default CONFIGURE ENCRYPTION FOR DATABASE OFF; # default CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DISK; CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_san.f'; # default Starting backup at 2014-JUL-24 11:12:21 current log archived allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=20 device type=DISK allocated channel: ORA_DISK_2 channel ORA_DISK_2: SID=108 device type=DISK channel ORA_DISK_1: starting compressed archived log backup set channel ORA_DISK_1: specifying archived log(s) in backup set input archived log thread=1 sequence=326 RECID=337 STAMP=853758742 channel ORA_DISK_1: starting piece 1 at 2014-JUL-24 11:12:24 channel ORA_DISK_1: finished piece 1 at 2014-JUL-24 11:12:25 piece handle=/oradata/backup1/SAN_2792912513_20140724_8dpe6koo_1_1 tag=ARCHIVELOG comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 2014-JUL-24 11:12:25 Starting backup at 2014-JUL-24 11:12:25 using channel ORA_DISK_1 using channel ORA_DISK_2 channel ORA_DISK_1: starting compressed incremental level 0 datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00003 name=/oradata/SAN/datafile/o1_mf_undotbs1_9oqwsjk6_.dbf channel ORA_DISK_1: starting piece 1 at 2014-JUL-24 11:12:26 channel ORA_DISK_2: starting compressed incremental level 0 datafile backup set channel ORA_DISK_2: specifying datafile(s) in backup set input datafile file number=00008 name=/oradata/SAN/datafile/o1_mf_user_dat_9wvp8s78_.dbf channel ORA_DISK_2: starting piece 1 at 2014-JUL-24 11:12:26 channel ORA_DISK_1: finished piece 1 at 2014-JUL-24 11:13:01 piece handle=/oradata/backup1/SAN_2792912513_20140724_8epe6koq_1_1 tag=FULLDB comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:35 channel ORA_DISK_1: starting compressed incremental level 0 datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00001 name=/oradata/SAN/datafile/o1_mf_system_9oqwr5tm_.dbf channel ORA_DISK_1: starting piece 1 at 2014-JUL-24 11:13:04 channel ORA_DISK_1: finished piece 1 at 2014-JUL-24 11:13:29 piece handle=/oradata/backup1/SAN_2792912513_20140724_8gpe6kpu_1_1 tag=FULLDB comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:25 channel ORA_DISK_1: starting compressed incremental level 0 datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00002 name=/oradata/SAN/datafile/o1_mf_sysaux_9oqwrv2b_.dbf channel ORA_DISK_1: starting piece 1 at 2014-JUL-24 11:13:30 channel ORA_DISK_1: finished piece 1 at 2014-JUL-24 11:13:45 piece handle=/oradata/backup1/SAN_2792912513_20140724_8hpe6kqp_1_1 tag=FULLDB comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15 channel ORA_DISK_1: starting compressed incremental level 0 datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00005 name=/oradata/SAN/datafile/o1_mf_ggs_data_9or2h3tw_.dbf channel ORA_DISK_1: starting piece 1 at 2014-JUL-24 11:13:45 channel ORA_DISK_1: finished piece 1 at 2014-JUL-24 11:13:48 piece handle=/oradata/backup1/SAN_2792912513_20140724_8ipe6kr9_1_1 tag=FULLDB comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03 channel ORA_DISK_1: starting compressed incremental level 0 datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00006 name=/oradata/SAN/datafile/o1_mf_testing_9rgp1q31_.dbf channel ORA_DISK_1: starting piece 1 at 2014-JUL-24 11:13:49 channel ORA_DISK_1: finished piece 1 at 2014-JUL-24 11:13:52 piece handle=/oradata/backup1/SAN_2792912513_20140724_8jpe6krc_1_1 tag=FULLDB comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03 channel ORA_DISK_2: finished piece 1 at 2014-JUL-24 11:14:44 piece handle=/oradata/backup/SAN_2792912513_20140724_8fpe6koq_1_1 tag=FULLDB comment=NONE channel ORA_DISK_2: backup set complete, elapsed time: 00:02:18 Finished backup at 2014-JUL-24 11:14:44 Starting backup at 2014-JUL-24 11:14:44 current log archived using channel ORA_DISK_1 using channel ORA_DISK_2 channel ORA_DISK_1: starting compressed archived log backup set channel ORA_DISK_1: specifying archived log(s) in backup set input archived log thread=1 sequence=327 RECID=338 STAMP=853758885 channel ORA_DISK_1: starting piece 1 at 2014-JUL-24 11:14:46 channel ORA_DISK_1: finished piece 1 at 2014-JUL-24 11:14:47 piece handle=/oradata/backup1/SAN_2792912513_20140724_8kpe6kt6_1_1 tag=ARCHIVELOG comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 2014-JUL-24 11:14:47 Starting Control File Autobackup at 2014-JUL-24 11:14:48 piece handle=/oradata/backup/SAN_c-2792912513-20140724-05.ctl comment=NONE Finished Control File Autobackup at 2014-JUL-24 11:14:55 Recovery Manager complete. ----- $ ls -l backup* backup: total 501172 -rw-r-----. 1 oracle oinstall 505167872 Jul 24 11:14 SAN_2792912513_20140724_8fpe6koq_1_1 -rw-r-----. 1 oracle oinstall 8028160 Jul 24 11:14 SAN_c-2792912513-20140724-05.ctl backup1: total 77108 -rw-r-----. 1 oracle oinstall 237056 Jul 24 11:12 SAN_2792912513_20140724_8dpe6koo_1_1 -rw-r-----. 1 oracle oinstall 1236992 Jul 24 11:12 SAN_2792912513_20140724_8epe6koq_1_1 -rw-r-----. 1 oracle oinstall 39452672 Jul 24 11:13 SAN_2792912513_20140724_8gpe6kpu_1_1 -rw-r-----. 1 oracle oinstall 34349056 Jul 24 11:13 SAN_2792912513_20140724_8hpe6kqp_1_1 -rw-r-----. 1 oracle oinstall 2539520 Jul 24 11:13 SAN_2792912513_20140724_8ipe6kr9_1_1 -rw-r-----. 1 oracle oinstall 1073152 Jul 24 11:13 SAN_2792912513_20140724_8jpe6krc_1_1 -rw-r-----. 1 oracle oinstall 67072 Jul 24 11:14 SAN_2792912513_20140724_8kpe6kt6_1_1
If this does not hit the nail on the head, then I don’t know what will.
Imagine someone, maybe me or yourself, deleting archivelog accidentally.
RMAN> delete noprompt archivelog all;
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=108 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=20 device type=DISK
RMAN-08138: WARNING: archived log not deleted - must create more backups
archived log file name=/oradata/SAN/archivelog/arc_845895297_1_326.dbf thread=1 sequence=326
RMAN-08138: WARNING: archived log not deleted - must create more backups
archived log file name=/oradata/SAN/archivelog/arc_845895297_1_327.dbf thread=1 sequence=327
RMAN>
-----
RMAN> configure archivelog deletion policy to none;
old RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DISK;
new RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE;
new RMAN configuration parameters are successfully stored
RMAN> delete noprompt archivelog all;
released channel: ORA_DISK_1
released channel: ORA_DISK_2
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=108 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=20 device type=DISK
List of Archived Log Copies for database with db_unique_name SAN
=====================================================================
Key Thrd Seq S Low Time
------- ---- ------- - --------------------
337 1 326 A 2014-JUL-24 11:04:17
Name: /oradata/SAN/archivelog/arc_845895297_1_326.dbf
338 1 327 A 2014-JUL-24 11:12:21
Name: /oradata/SAN/archivelog/arc_845895297_1_327.dbf
deleted archived log
archived log file name=/oradata/SAN/archivelog/arc_845895297_1_326.dbf RECID=337 STAMP=853758742
deleted archived log
archived log file name=/oradata/SAN/archivelog/arc_845895297_1_327.dbf RECID=338 STAMP=853758885
Deleted 2 objects
RMAN>
Will you be using configure for your next RMAN implementation?
Share this
Share this
More resources
Learn more about Pythian by reading the following blogs and articles.
RMAN - Validating Archivelog Backup
RMAN 12c : Say goodbye to your backup when dropping your PDB
When RMAN Validate Creates New Files
Ready to unlock value from your data?
With Pythian, you can accomplish your data transformation goals and more.