Sunday, October 8, 2017

script using MEB

cat MEB_BKP.sh
#!/bin/bash
#########################################################################################################################
#  This script is designed to Take MEB of MySql Databases.
#  Author :
#  Description : Backup using MEB
#  Pre Req :
#  Usage   :
#  History : Created :
#########################################################################################################################
#########################################################################################################################
# Reserved for History and updates
#
#
#
#
#
#########################################################################################################################
BDATE=`date +%d%m%y`
DATE=`date +%d%m%y_%H%M`
. $HOME/scripts/variables.env
PATH=$MYSQL_HOME/bin:$PATH:.
IP=`hostname -i`
HOST=`hostname`
STMAIL="alert@mydomain.com"
DUMP_DIR="$BKPDIR/PHYBKP"
CR_DUMP_DIR="${DUMP_DIR}/${BDATE}"
LOGDIR="$BKPDIR/PHYBKPLOG"
mkdir -p $DUMP_DIR $LOGDIR
LOG_FILE="${LOGDIR}/mysql_hot_bkp_${DATE}.log"
echo "Script started at ${DATE}">>${LOG_FILE}
if [ -d ${CR_DUMP_DIR} ];
        then
        echo "executing Incremental backup script at ${DATE}">>${LOG_FILE}
        START_DATE=`date +%d%m%y_%H%M`
        $MYSQL_HOME/bin/mysqlbackup --defaults-file=${MYSQL_HOME}/my.cnf --socket=$SOCK -u${RT_USR} -p${RT_PASSWD}  \
        --incremental --incremental-base=dir:${DUMP_DIR}/${BDATE} \
        --incremental-backup-dir=${CR_DUMP_DIR}/${DATE}_INC backup
        STATUS=`tail -100 ${CR_DUMP_DIR}/${DATE}_INC/meta/*inc_backup.log|grep "mysqlbackup completed OK"|wc -l`
        END_DATE=`date +%d%m%y_%H%M`
                if [ $STATUS -ge 1 ];
                        then
                        echo "Database $IP backed up successfully at $END_DATE ">>${LOG_FILE}
                        echo "******************************************************************" >> ${LOG_FILE}
                        $MYSQL_HOME/bin/mysql -u${BKP_USR} -p${BKP_PASSWD} -h ${BKP_SERVER} -e "use backuplog;insert into meb_bkp(IP_Address,host_name,dump_dir,Start_Time,End_Time,Status) values('$IP','$HOST','${CR_DUMP_DIR}/${DATE}_INC backup','$START_DATE','$END_DATE','Success');"
                else
                        echo "Backup of database $IP failed!!! Kindly check">>${LOG_FILE}
                        echo "******************************************************************" >> ${LOG_FILE}
                        $MYSQL_HOME/bin/mysql -u${BKP_USR} -p${BKP_PASSWD} -h ${BKP_SERVER} -e "use backuplog;insert into meb_bkp(IP_Address,host_name,dump_dir,Start_Time,End_Time,Status) values('$IP','$HOST','${CR_DUMP_DIR}/${DATE}_INC backup','$START_DATE','$END_DATE','Failed');"
                fi
else
        echo "executing Base backup script at ${DATE}">>${LOG_FILE}
        START_DATE=`date +%d%m%y_%H%M`
        $MYSQL_HOME/bin/mysqlbackup --socket=$SOCK -u${RT_USR} -p${RT_PASSWD} --backup-dir=${CR_DUMP_DIR} backup-and-apply-log
        STATUS=`tail -100 ${CR_DUMP_DIR}/meta/*backup_apply_log.log|grep "mysqlbackup completed OK"|wc -l`
        END_DATE=`date +%d%m%y_%H%M`
                if [ $STATUS -ge 1 ];
                        then
                        echo "Database $IP backed up successfully at $END_DATE ">>${LOG_FILE}
                        echo "******************************************************************" >> ${LOG_FILE}
                        $MYSQL_HOME/bin/mysql -u${BKP_USR} -p${BKP_PASSWD} -h ${BKP_SERVER} -e "use backuplog;insert into meb_bkp(IP_Address,host_name,dump_dir,Start_Time,End_Time,Status) values('$IP','$HOST','${CR_DUMP_DIR}','$START_DATE','$END_DATE','Success');"
                else
                        echo "Backup of database $IP failed!!! Kindly check">>${LOG_FILE}
                        echo "******************************************************************" >> ${LOG_FILE}
                        $MYSQL_HOME/bin/mysql -u${BKP_USR} -p${BKP_PASSWD} -h ${BKP_SERVER} -e "use backuplog;insert into meb_bkp(IP_Address,host_name,dump_dir,Start_Time,End_Time,Status) values('$IP','$HOST','${CR_DUMP_DIR}','$START_DATE','$END_DATE','Failed');"
                fi
echo "CHECKING SUCESS/FAILURE" >> ${LOG_FILE}
fi
find ${DUMP_DIR}/* -maxdepth 1 -type d -mtime +1 -exec rm -r "{}" \;


===========================================


cat variables.env
MYSQL_HOME=/mysqldata/mysqlbinary/mysql
SOCK='/mysqldata/data/mysqld.sock'
BKPDIR=/mysqlbackup
RT_USR=root
RT_PASSWD='somepassword'
BKP_USR='backupuser'
BKP_PASSWD='somepassword'
BKP_SERVER='backupserverip'


No comments:

Post a Comment