感谢支持
我们一直在努力

Linux 备份文件和数据库发送到邮箱

一个误操作 把一个月的文件备份和数据库备份删掉了

做了一个用sendmail发送到邮箱的备份脚本:

Xml代码


  1.   

  2. #!/bin/bash   

  3. # X ,  sendmail hoodbc20117   

  4. ### Setting path ###   

  5. BACKPATH=“/data0/mysql_bak”  

  6. DATE=`/bin/date “+%Y-%m-%d-%H-%M-%S”`   

  7.   

  8. zip -rq $BACKPATH/erp_$DATE.zip /data/htdocs/www/erp/   

  9. echo “erp all backup” | mutt -a $BACKPATH/erp_$DATE.zip -s “erp all backup” bluehood24@163.com   

  10.   

  11. find $BACKPATH -ctime +30 -name *.zip -delete  


顺便把数据库备份的脚本也记录下来:

Xml代码


  1. #!/bin/bash   

  2. # hoodbc20117   

  3.   

  4. ### database setting ###   

  5. USER=‘root’  

  6. PASSWORD=  

  7. HOST=“127.0.0.1”  

  8. DATABASES=(erp)   

  9.   

  10. ### Setting path ###   

  11. MYSQLDUMP=/usr/local/webserver/mysql/bin/mysqldump   

  12. BACKPATH=“/data0/mysql_bak”  

  13.   

  14. DATE=`/bin/date “+%Y-%m-%d-%H-%M-%S”`   

  15. for DATABASE in ${DATABASES[*]}   

  16. do   

  17.     FILENAME=“$DATABASE-$DATE”  

  18.   

  19.     $MYSQLDUMP –add-drop-table –user $USER –password=$PASSWORD $DATABASE –lock-all-tables>> “$BACKPATH/$FILENAME.sql”   

  20. done   

  21.   

  22. #tar zcf -r $BACKPATH/erp_$DATE.tar.gz ~/data/htdocs/www/erp   

  23. #zip -rq $BACKPATH/erp_$DATE.zip /data/htdocs/www/erp/   

  24. zip -rq $BACKPATH/$FILENAME.zip $BACKPATH/$FILENAME.sql   

  25. echo “erp db backup” | mutt -a $BACKPATH/$FILENAME.zip -s “erp db backup” bluehood24@163.com   

  26.   

  27. find $BACKPATH -ctime +30 -name *.sql -delete  

记得加上–lock-all-tables的参数,这样在导出sql文件的时候会锁定表,当然也可以直接把数据库文件打包。最后加到crontab里定时运行脚本。

赞(0) 打赏
转载请注明出处:服务器评测 » Linux 备份文件和数据库发送到邮箱
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏