mysql自動備份
阿新 • • 發佈:2018-12-20
done character one cron ip地址 mysql bash lob rac 配置crontab實現自動備份
crontab -e root
* * 6 * * sh /data/backup/mysql_backup.sh >>/data/backup/backup.log 2>&1
#!/bin/bash DBusername=root #數據庫用戶名 DBpasswd=123 #數據庫密碼 DBname=test #數據庫名 Host=192.168.1.2 #ip地址,本地可用localhost Port=3306 #數據庫端口 BKdir=/data/backup #備份存放的目錄 BKtime=`date +%Y%m%d` #系統當前時間 #開始備份 mysqldump -h ${Host} -P${Port} -u${DBusername} -p${DBpasswd} ${DBname} --default-character-set=utf8 --hex-blob -r ${BKdir}/${DBname}-${BKtime}.sql #截取所有備份文件的時間 time1=`ls $BKdir/${DBname}*.sql |awk -F- ‘{print $2}‘|awk -F. ‘{print $1}‘` #刪除30天以前的備份文件 for time in ${time1} do time2=$(($(date +%s) - $(date +%s -d ${time}))); day=$((time2/60/60/24)) if [[ ${day} > 30 ]] then rm -f ${BKdir}/${DBname}-${time}.sql fi done
mysql自動備份