REQUIREMENT:

Configure shell script to take rman Full backup .

SCRIPT: ( rman_full_bkp.sh)

# $Header: rman_full_bkp.sh  
# *====================================================================================+
# |  Author - DBACLASS ADMIN TEAM 
# |                                                       |
# +====================================================================================+
# |
# | DESCRIPTION
# |     Take rman full backup(incremental level 0 ) 
# | PLATFORM
# |     Linux/Solaris/HP-UX

# +===========================================================================+
#!/bin/bash
RMANBACKUP_MOUNTPOINT1=/u01/oracle/rman_bkp
PARALLELISM=4
MAXPIECESIZE=3g
export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
export ORACLE_SID=TESTDB
export PATH=$ORACLE_HOME/bin:$PATH

fullBackup () {
rman log=/u01/oracle/rman_bkp/LOG/RMANFULLincr.log << EOF
connect target /
set echo on;
configure backup optimization on;
configure controlfile autobackup on;
configure controlfile autobackup format for device type disk to '$RMANBACKUP_MOUNTPOINT1/%F';
configure maxsetsize to unlimited;
configure device type disk parallelism $PARALLELISM;
run
{
allocate channel c1 type disk format '${RMANBACKUP_MOUNTPOINT1}/%I-%Y%M%D-%U' maxpiecesize ${MAXPIECESIZE};
allocate channel c2 type disk format '${RMANBACKUP_MOUNTPOINT1}/%I-%Y%M%D-%U' maxpiecesize ${MAXPIECESIZE};
allocate channel c3 type disk format '${RMANBACKUP_MOUNTPOINT1}/%I-%Y%M%D-%U' maxpiecesize ${MAXPIECESIZE};
allocate channel c4 type disk format '${RMANBACKUP_MOUNTPOINT1}/%I-%Y%M%D-%U' maxpiecesize ${MAXPIECESIZE};
backup  as compressed backupset incremental level 0  check logical database plus archivelog;
release channel c1 ;
release channel c2 ;
release channel c3 ;
release channel c4 ;
}
configure backup optimization clear;
configure controlfile autobackup clear;
sql 'alter system archive log current';
exit
EOF
}

# Main

fullBackup

Give 755 permission

chmod 755 rman_full_bkp.sh

Configure script in crontab:

00 22 * * * "/u01/app/oracle/rman_full_bkp.sh" > /tmp/rmanarch.log

For taking incremental backup,Just update the backup command with the below one.

backup as compressed backupset incremental level 1 check logical database plus archivelog;