通過shell定時備份資料庫

來源:互聯網
上載者:User

標籤:調試   host   .sh   開始   cront   amp   user   SQ   TE   

需求:
  1. 每天淩晨2:10備份資料庫zhengDB到 /data/backup/db。
  2. 備份開始和結束能夠給出相應提示資訊。
  3. 備份後的檔案標識標準為已備份時間為檔案名稱,並打包成 .tar.gz 的形式,如:2018-07-01_211802.tar.gz。
  4. 在備份的同時,檢查是否有10天前備份的資料庫檔案,如果有就將其刪除。
步驟:step1 : 編寫shell並授權
vim mysql_db_backup.sh
#!/bin/bash#完成資料庫的定時備份。#備份的路徑BACKUP=/data/backup/db#當前的時間作為檔案名稱DATETIME=$(date +%Y_%m_%d_%H%M%S)#可以輸出變數調試#echo ${DATETIME}echo "=======開始備份========"echo "=======備份的路徑是 $BACKUP/$DATETIME.tar.gz"#主機HOST=localhost#使用者名稱DB_USER=root#密碼DB_PWD=123#備份資料庫名DATABASE=zhengDB#建立備份的路徑#如果備份的路徑檔案夾存在,就使用,否則就建立[ ! -d "$BACKUP/$DATETIME" ] && mkdir -p "$BACKUP/$DATETIME"#執行mysql的備份資料庫的指令mysqldump -u${DB_USER} -p${DB_PWD} --host=$HOST  $DATABASE | gzip > $BACKUP/$DATETIME/$DATETIME.sql.gz#打包備份檔案cd $BACKUPtar -zcvf $DATETIME.tar.gz $DATETIME#刪除臨時目錄rm -rf $BACKUP/$DATETIME#刪除10天前的備份檔案find $BACKUP -mtime +10 -name "*.tar.gz" -exec rm -rf {} \;echo "=====備份檔案成功==========="
chmod 744 mysql_db_backup.sh   #授權
step2 : 設定定時任務
crontab -e

在彈出的vim編輯中編輯定時任務並儲存

10 2 * * * /usr/sbin/mysql_db_backup.sh

 

通過shell定時備份資料庫

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.