#說明:腳本執行策略爲每天執行一次,執行前需要先建立config文件,並在config文件
#中添加
#backup_full=
#backup_pre_name=
#即可,注意路徑。
#備份策略,每七天一個循環,第一天爲全備份,第二天至第六天爲增量備份。
#後續會增加已備份文件壓縮轉移定期刪除部分
增量爲備份單庫,全量爲所有庫
#!/bin/bash
backup_full_dir="/backup/mysql/full/"
backup_incr_dir="/backup/mysql/incr/"
backup_log_dir="/backup/log/"
backup_config_dir="/backup/config/"
backup_gztar="/backup/tar.gzdb/"
backup_config="config"
db_conf="/etc/my.cnf"
root="root"
pwd="123456"
incr_db="develop"
db_backup_day=7
starttime=`date +'%Y-%m-%d %H:%M:%S'`
time="$(date +"mysql-%Y-%m-%d")"
source /backup/config/config
old_backup_file=${backup_full} #獲取全量備份文件名稱
_day=`echo ${old_backup_file} | awk 'BEGIN{FS="-"}{print $2"-"$3"-"$4}'`
_old_day=$(date +%s -d "$_day")
_new_day=$(date +%s )
let num=$(((${_new_day}-${_old_day})/86400)) #計算當前時間與全量備份時間差值
Ym_week=$(date +'%Y-%m')"_"$(date +'%V') #年-月_本年第幾周
backup_full=${time}
tar_gz_full_dir=`date -d "${db_backup_day} days ago" +"