Schedule Database Backup Job on Linux

1. Make Backup Script Having following Task: 

                a. That will make File Name (unique - by taking current system time)  

                b. Then Export Database with Log having system generated File Name as Above

                c. Then Zip These DMP and LOG file with Password

                d. Remove DMP & LOG, to release Space.

                e. Move ZIP file to Remote Location (NAS Drive/Backup Directory having FTP Enabled)

------------------------------------------------------------------------------------------------------------------------------

#BackupScript.sh

. /home/oracle/scripts/setEnv.sh

filename=$( date +%d%m%Y_%H%M)

BACKUP_DIR="/u02/backup"

expdp user/pass@db_pdbp schemas=users directory=datapump dumpfile=$filename.dmp logfile=$filename.log

#tar -zcvpf $BACKUP_DIR/$filename.tar.gz $BACKUP_DIR/$filename.dmp $BACKUP_DIR/$filename.log

zip --password "ZIP_PASS" $BACKUP_DIR/$filename.zip $BACKUP_DIR/$filename.dmp $BACKUP_DIR/$filename.log

rm $BACKUP_DIR/$filename.dmp $BACKUP_DIR/$filename.log

cd $BACKUP_DIR

ftp -n NASDRIVE_IP/HOSTNAME << EOF

user USERNAME PASSWORD

cd Backups

put $filename.zip

EOF

-----------------------------------------------------------------------------------------------------------------------------

2. Schedule JOB

    a. Schedule BackupScript by using

    crontab -e

30 21 * * * sh /home/oracle/scripts/BackupScript.sh >> /home/oracle/scripts/Back                                                                                        upLogs/backup_06_30PM.log 2>&1

00 13  * * * sh /home/oracle/scripts/BackupScript.sh >> /home/oracle/scripts/Bac                                                                                        kupLogs/backup_12PM.log 2>&1

  b. Add Log of RUN JOB into Logs

30 18 * * * sh /home/oracle/scripts/BackupScript.sh >> /home/oracle/scripts/Back                                                                                        upLogs/backup_06_30PM.log 2>&1
00 12  * * * sh /home/oracle/scripts/BackupScript.sh >> /home/oracle/scripts/Bac                                                                                        kupLogs/backup_12PM.log 2>&1

Comments