手把手的教你做好資料庫備份(shell腳本)

玩資料庫的朋友有件事情千萬不要忘記做,雖說人人知道,說起來多麼簡單,如何容易,但一不小心你的資料庫沒有備份,不好意思,哭去吧,一夜回到解放前啥都沒有了,我想資料庫備份的重要性我不多說了,現在就開放點shell腳本如何備份資料庫的代碼,喜歡的記得點個贊,不喜歡的當然也請點個贊。

#!/bin/bashtime=$(date +"%d-%m-%Y") #備份文件夾命名upload=/mydata/upload/$(date +"%Y-%m-%d") #圖片所在文件夾pre=/home/qzp_homeif [ ! -d "$pre/data_backup/$time" ]then mkdir -p $pre/data_backup/$time echo "create $pre/data_backup/$time"else echo "exist $pre/data_backup/$time"fiif [ -d "$pre/data_backup/$time" ]then mysqldump -uqzp -p123456 --opt qzp user > $pre/data_backup/$time/user.sql #備份一張表格(你要備份多張請自己複製添加) zip -r $pre/data_backup/$time/pic.zip $upload/* #把圖片打包處理 cd $pre/data_backup #enter dir zip -r $time.zip $time/ #最後以壓縮包的形式出現 rm -fr $time #delete cd - echo "zip backup database finished"else echo "can not find backup file"fi

現在來注意個問題,上文zip 命令需要安裝壓縮工具,這個勞請自己 安裝下(不會百度吧,太easy了)

還有個問題,腳本寫好了,誰也沒有精力手動去運行備份吧?所以,接下來關鍵的一點,使用crontab定時器來定時執行腳本,至於crontab請簡單的上網學習下:

1 0 * * 0,1,2,3,4,5,6 /home/backup.sh >> /home/qzp/log/backup.log

這是去轉盤網的備份定時器,原封不動的搬了過來,每天1點備份,重定向輸出備份日誌到:

/home/qzp/log/backup.log

最後上圖,看下備份結果:

ok,分享完了,感謝閱讀!
推薦閱讀:

生信自學之linux操作基礎
為什麼拷貝到U盤速度越來越慢?
Linux系統安全

TAG:Linux | 数据库 | 程序员 |