For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!
Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.
I would have thought that the cli tool would have been the logical place, but I cant see it.
https://docs.cloud.oracle.com/en-us/iaas/tools/oci-cli/2.9.3/oci_cli_docs/
orasiya wrote:Dear Friends,I need bash example (good & effective rman bash example) of rman backup for my production database , simple but effective that1- it does level 0 backup of database including the control file , spfile every week on saturdays2- it does incremental level 1 backup everyday3- it does archivelog backup everydayfor review----------------------------- level 0run{allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/FULL_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/FULL_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/FULL_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/FULL_%U';.....backup as backupset incremental level 0 section size 32g database tag 'RMAN/FULL_L0' plus archivelog not backed up 2 times;#control file backupallocate channel ch_cntl device type disk format '/ZFS/DB_PRO/disk1/cf_%U';backup as backupset CURRENT CONTROLFILE channel ch_cntl;#spfile backupallocate channel ch_sp device type disk format '/ZFS/DB_PRO/disk1/sp_%U';backup as backupset SPFILE channel ch_sp;DELETE NOPROMPT OBSOLETE;}----------------------------- level 1run{allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/INC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/INC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/INC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/INC_%U';..... backup as backupset incremental level 1 section size 32g database tag 'RMAN/LEVEL_L1' plus archivelog not backed up 2 times; DELETE NOPROMPT OBSOLETE; } ------------------------------ -------------------- archivelog backup run{allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/ARC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/ARC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/ARC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/ARC_%U';backup archivelog all not backed up 2 times;delete noprompt archivelog until time '(sysdate-30)'; }--------some rman configuration setting RMAN> show all;RMAN configuration parameters for database with db_unique_name DB_PRO are:CONFIGURE RETENTION POLICY TO REDUNDANCY 5;CONFIGURE BACKUP OPTIMIZATION OFF; # defaultCONFIGURE DEFAULT DEVICE TYPE TO DISK; # defaultCONFIGURE CONTROLFILE AUTOBACKUP ON;CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/ZFS/DB_PRO/disk1/auto/%F';CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # defaultCONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE MAXSETSIZE TO UNLIMITED; # defaultCONFIGURE ENCRYPTION FOR DATABASE OFF; # defaultCONFIGURE ENCRYPTION ALGORITHM 'AES128'; # defaultCONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # defaultCONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # defaultCONFIGURE SNAPSHOT CONTROLFILE NAME TO '+REC1/DB_PRO/snapcf_DB_PRO.f';
orasiya wrote:
Dear Friends,
I need bash example (good & effective rman bash example) of rman backup for my production database , simple but effective that
1- it does level 0 backup of database including the control file , spfile every week on saturdays
2- it does incremental level 1 backup everyday
3- it does archivelog backup everyday
for review
----------------------------- level 0run{allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/FULL_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/FULL_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/FULL_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/FULL_%U';.....backup as backupset incremental level 0 section size 32g database tag 'RMAN/FULL_L0' plus archivelog not backed up 2 times;#control file backupallocate channel ch_cntl device type disk format '/ZFS/DB_PRO/disk1/cf_%U';backup as backupset CURRENT CONTROLFILE channel ch_cntl;#spfile backupallocate channel ch_sp device type disk format '/ZFS/DB_PRO/disk1/sp_%U';backup as backupset SPFILE channel ch_sp;DELETE NOPROMPT OBSOLETE;}----------------------------- level 1run{allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/INC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/INC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/INC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/INC_%U';..... backup as backupset incremental level 1 section size 32g database tag 'RMAN/LEVEL_L1' plus archivelog not backed up 2 times; DELETE NOPROMPT OBSOLETE; } ------------------------------ -------------------- archivelog backup run{allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/ARC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/ARC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/ARC_%U';allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/ARC_%U';backup archivelog all not backed up 2 times;delete noprompt archivelog until time '(sysdate-30)'; }--------some rman configuration setting RMAN> show all;RMAN configuration parameters for database with db_unique_name DB_PRO are:CONFIGURE RETENTION POLICY TO REDUNDANCY 5;CONFIGURE BACKUP OPTIMIZATION OFF; # defaultCONFIGURE DEFAULT DEVICE TYPE TO DISK; # defaultCONFIGURE CONTROLFILE AUTOBACKUP ON;CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/ZFS/DB_PRO/disk1/auto/%F';CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # defaultCONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE MAXSETSIZE TO UNLIMITED; # defaultCONFIGURE ENCRYPTION FOR DATABASE OFF; # defaultCONFIGURE ENCRYPTION ALGORITHM 'AES128'; # defaultCONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # defaultCONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # defaultCONFIGURE SNAPSHOT CONTROLFILE NAME TO '+REC1/DB_PRO/snapcf_DB_PRO.f';
----------------------------- level 0
run
{
allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/FULL_%U';
allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/FULL_%U';
.....
backup as backupset incremental level 0 section size 32g database tag 'RMAN/FULL_L0' plus archivelog not backed up 2 times;
#control file backup
allocate channel ch_cntl device type disk format '/ZFS/DB_PRO/disk1/cf_%U';
backup as backupset CURRENT CONTROLFILE channel ch_cntl;
#spfile backup
allocate channel ch_sp device type disk format '/ZFS/DB_PRO/disk1/sp_%U';
backup as backupset SPFILE channel ch_sp;
DELETE NOPROMPT OBSOLETE;
}
----------------------------- level 1
allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/INC_%U';
allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/INC_%U';
backup as backupset incremental level 1 section size 32g database tag 'RMAN/LEVEL_L1' plus archivelog not backed up 2 times;
------------------------------
-------------------- archivelog backup
allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk1/ARC_%U';
allocate channel ch01 device type disk format '/ZFS/DB_PRO/disk2/ARC_%U';
backup archivelog all not backed up 2 times;
delete noprompt archivelog until time '(sysdate-30)';
--------some rman configuration setting
RMAN> show all;
RMAN configuration parameters for database with db_unique_name DB_PRO are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 5;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/ZFS/DB_PRO/disk1/auto/%F';
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
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;
CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+REC1/DB_PRO/snapcf_DB_PRO.f';
Why do you allocate different directories for the level 0 backup than for the level 1 backups? This is needless complexity.
YOu don't need separate run blocks for archivelogs and/or controlfile/spfile. This is needless complexity
I accomplish everything you want with a single shell script. Here's the core of it:
#!/bin/shORACLE_SID=$1inclvl=$2logfile=$3ORAENV_ASK=NOsource oraenvrman target / <<EOF >> $logfileset echo ondelete force noprompt obsolete;backup as compressed backupset incremental level $inclvl database tag ${ORACLE_SID}_db_bkup plus archivelog delete all input /tag ${ORACLE_SID}_arch_bkup;list backup;EOF
#!/bin/sh
ORACLE_SID=$1
inclvl=$2
source oraenv
rman target / <<EOF >> $logfile
set echo on
backup as compressed backupset incremental level $inclvl database tag ${ORACLE_SID}_db_bkup plus archivelog delete all input /
tag ${ORACLE_SID}_arch_bkup;
EOF