Full RMAN Shell Script to Backup Archive Logs Completed 2 Hours Back & Delete Input


#!/bin/bash

# --------------------------
# RMAN Archive Backup Script
# Backup archive logs older than 2 hours and delete input after backup
# --------------------------

# Set Oracle Environment
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
export ORACLE_SID=ORCL
export PATH=$ORACLE_HOME/bin:$PATH
BACKUP_DIR="/u02/rman_backup"

# Log file
LOGFILE="/u02/rman_backup/rman_arch_backup_$(date +%Y%m%d_%H%M%S).log"

# Start RMAN Backup
rman target / <<EOF > $LOGFILE

RUN {
    # Allocate channels (adjust as needed)
    ALLOCATE CHANNEL c1 DEVICE TYPE DISK;
    ALLOCATE CHANNEL c2 DEVICE TYPE DISK;

    # Backup archive logs older than 2 hours and delete them after backup
    BACKUP AS COMPRESSED BACKUPSET
        ARCHIVELOG UNTIL TIME "SYSDATE - (2/24)"  -- 2 hours back
        FORMAT '${BACKUP_DIR}/archlog_%d_%T_%U.bkp'
        DELETE INPUT;

    RELEASE CHANNEL c1;
    RELEASE CHANNEL c2;
}

EOF

echo "RMAN Archive Backup Completed. Logfile: $LOGFILE"





Please do like and subscribe to my youtube channel: https://www.youtube.com/@foalabs If you like this post please follow,share and comment