標籤:style blog color 使用 io 檔案 資料 div log
1、建立.sh檔案,內容是
# encoding: utf-8#配置參數 USER=root #資料庫使用者名稱 PASSWORD=123456 #資料庫使用者密碼 DATABASE=cnm #資料庫名稱 WEBMASTER="[email protected]" #管理員郵箱地址,用以發送備份失敗訊息提醒BACKUP_DIR=/home/HuiLife_Backup #備份檔案儲存路徑LOGFILE=/home/HuiLife_Backup/backup.log #記錄檔路徑 DATE=`date +"%Y%m%d-%H%M"` #日期格式(作為檔案名稱) FILENAME=$DATABASE$DATE.gz #壓縮檔名OPTIONS="-u$USER -p$PASSWORD cnm | gzip "#mysqldump 參數 詳情見協助 mysqldump -help #判斷備份檔案儲存目錄是否存在,否則建立該目錄 if [ ! -d $BACKUP_DIR ]; then mkdir -p "$BACKUP_DIR"fi #開始備份之前,將備份資訊頭寫入日記檔案 echo "———————————————–" >> $LOGFILEecho "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $LOGFILE #切換至備份目錄 cd $BACKUP_DIR #使用mysqldump 命令備份制定資料庫,並以格式化的時間戳記命名備份檔案mysqldump -u$USER -p$PASSWORD $DATABASE | gzip > $BACKUP_DIR/$FILENAME #判斷Database Backup是否成功 if [[ $? == 0 ]]; then #輸入備份成功的訊息到日記檔案 echo "[$BACKUP_DIR/$DATABASE$FILENAME] Backup Successful!" >> $LOGFILEelse echo "Database Backup Fail!" >> $LOGFILE #備份失敗後向網站管理者發送寄件提醒,需要mailutils或者類似終端下發送郵件工具的支援 #如果需要發郵件,且mail配置好了,就去掉下面的注釋 echo "Database Backup錯誤,請及時檢查!時間:"`date +"%Y年%m月%d日 %H點%M分"` | mail -s "Database DATABASE Daily Backup Fail" $WEBMASTERfi #輸出備份過程結束的提醒訊息echo "Backup Process Done"
核心內容是:
filename=`date +%Y%m%d`/usr/bin/mysqldump -u root -proot cnm | gzip > /root/HuiLife_Backup/cnm$filename.gz
(1)寄件提醒功能依賴sendmail
2、輔助執行許可權並測試
chmod +x autobackup./autobackup
3、實現自動備份
要求安裝Cron服務(定時任務管理伺服器)
vi /etc/crontab
最後加入:(每天18:45執行)
45 18 * * * root /root/autobackup
Done!
mysql實現自動備份資料庫