3 備份的日誌文件位置 記錄備份內容、備份時間 、備份耗時
4 計劃任務 每天定時備份
將dbbackup.sh拷貝到/usr/backup下
添加計劃任務,每天凌晨兩點執行備份
sudo crontab -e
分 時 日 月 周
備份腳本內容:
#!/bin/bash
#標記程序開始時間
date_start=`date|awk -F"[ :]" '{print $4*3600 + $5*60 +$6}'`
#進入要備份的目錄
cd /usr/backup
#數據庫備份命令,包括存儲過程,使用utf8字符編碼,以"global_日期"命名
/usr/local/mysql/bin/mysqldump --opt -R -uroot -proot --default-character-set=utf8 global>global_$(date +%Y%m%d).sql
#/將數據庫備份文件進行壓縮
tar zcvf global_$(date +%Y%m%d).tar.gz global_$(date +%Y%m%d).sql
#備份完後將原文件刪除
rm -rf global_$(date +%Y%m%d).sql
#刪除備份時間超過100天的備份文件
rm -rf global_$(date -d -100day +%Y%m%d ).tar.gz
#標記程序結束時間
date_end=`date|awk -F"[ :]" '{print $4*3600 + $5*60 +$6}'`
#計算程序執行時間
time=`expr "$date_end" - "$date_start"`
#生成日誌文件
echo 'backup database global in' $(date +%Y-%m-%d%H:%M:%S) >> /usr/backup/dbbackup.log
#結束