Last active
April 12, 2016 08:46
-
-
Save andyliu/1bfacdff3fc7fa5f6d4186f11013bf97 to your computer and use it in GitHub Desktop.
VPS backup
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# MYSQL数据库帐号密码 | |
#MYSQL_USR="root" # 数据库帐号 | |
#MYSQL_PWD="password" # 数据库密码 | |
MAIL_TO=kdo@qq.com | |
# 定义需要备份的目录 | |
NGINX_CONF_DIR=/usr/local/nginx/conf # nginx配置目录 | |
WEB_DIR=/home/wwwroot # 网站数据存放目录 | |
# 定义备份存放目录 | |
DROPBOX_DIR=/dahu/$(date +%Y-%m-%d) # Dropbox上的备份目录 | |
LOCAL_BAK_DIR=/home/backup # 本地备份文件存放目录 | |
# 定义备份文件名称 | |
DBBakName=amh_$(date +%Y%m%d).tar.gz | |
NginxConfBakName=NginxConf_$(date +%Y%m%d).tar.gz | |
WebBakName=Web_$(date +%Y%m%d).tar.gz | |
# 定义旧数据名称 | |
Old_DROPBOX_DIR=/muyuhu/$(date -d -3day +%Y-%m-%d) | |
OldDBBakName=DB_$(date -d -5day +%Y%m%d).tar.gz | |
OldNginxConfBakName=NginxConf_$(date -d -5day +%Y%m%d).tar.gz | |
OldWebBakName=Web_$(date -d -5day +%Y%m%d).tar.gz | |
cd $LOCAL_BAK_DIR | |
#使用命令导出SQL数据库,并且按数据库分个压缩 | |
#for db in `mysql -u$MYSQL_USR -p$MYSQL_PWD -B -N -e 'SHOW DATABASES' | xargs`; do | |
# (mysqldump -u$MYSQL_USR -p$MYSQL_PWD ${db} | gzip -9 - > ${db}.sql.gz) | |
#done | |
#压缩数据库文件合并为一个压缩文件 | |
#tar zcf $LOCAL_BAK_DIR/$DBBakName $LOCAL_BAK_DIR/*.sql.gz | |
#rm -rf $LOCAL_BAK_DIR/*.sql.gz | |
#压缩数据库文件合并为一个压缩文件 | |
tar zcf $LOCAL_BAK_DIR/$DBBakName $LOCAL_BAK_DIR/*.tar.gz.amh | |
rm -rf $LOCAL_BAK_DIR/*.tar.gz.amh | |
#压缩Nginx配置数据 | |
#cd $NGINX_CONF_DIR | |
#tar zcf $LOCAL_BAK_DIR/$NginxConfBakName ./* | |
#压缩网站数据 | |
#cd $WEB_DIR | |
#tar zcf $LOCAL_BAK_DIR/$WebBakName ./* | |
cd /root/backup | |
chmod +x dropbox_uploader.sh | |
#开始上传 | |
./dropbox_uploader.sh upload $LOCAL_BAK_DIR/$DBBakName $DROPBOX_DIR/$DBBakName | |
#./dropbox_uploader.sh upload $LOCAL_BAK_DIR/$NginxConfBakName $DROPBOX_DIR/$NginxConfBakName | |
#./dropbox_uploader.sh upload $LOCAL_BAK_DIR/$WebBakName $DROPBOX_DIR/$WebBakName | |
#删除旧数据 | |
#rm -rf $LOCAL_BAK_DIR/$OldDBBakName $LOCAL_BAK_DIR/$OldNginxConfBakName $LOCAL_BAK_DIR/$OldWebBakName | |
rm -rf $LOCAL_BAK_DIR/$OldDBBakName | |
./dropbox_uploader.sh delete $Old_DROPBOX_DIR/ | |
echo -e "Backup Done!" | |
echo "muyuhu backup ok" | mutt -s "dahu backup ok" $MAIL_TO |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment