1. 程式人生 > 實用技巧 >mysql備份指令碼

mysql備份指令碼

新建一個備份的指令碼檔案

/data/shell 路徑

auto_backup_mysql.sh 檔名,備份指令碼內容放入auto_backup_mysql.sh檔案中

#!/bin/bash
#auto backup mysql db
#by authors wugk 2020
#define backup path

BAK_DIR=/data/backup/`date +%Y%m%d`
MYSQLDB=test
MYSQLUSR=root
MYSQLPW=admin
MYSQLCMD=/usr/bin/mysqldump

if [ $UID -ne 0 ];then
      echo "Must to be use root for exec shell."
      exit
fi

if [ ! -d $BAK_DIR ];then
        mkdir -p $BAK_DIR
       echo -e "\033[32mThe $BAK_DIR Create Successfully!\033[0m"
else
   echo -e "This $BAK_DIR is exists..."
fi
#Mysql BACKUP COMMAND
$MYSQLCMD -u$MYSQLUSR -p$MYSQLPW -d $MYSQLDB >$BAK_DIR/$MYSQLDB.sql
if [ $? -eq 0 ];then
    echo -e "\033[32mThe Mysql  Backup $MYSQLDB Successfully!\033[0m"
else
    echo -e "\033[32mThe Mysql  Backup $MYSQLDB Failed,Please check.\033[0m"
fi

crontab -e 設定定時任務

0 0 * * * /bin/bash /data/shell/auto_backup_mysql.sh >>/tmp/mysql_bak.log 備份計劃

待優化內容:沒有壓縮,沒有設定儲存多少天自動清除