自动将VPS上的网站文件和数据库打包备份到百度云盘脚本

  • A+
所属分类:VPS/Servers

VPS备份,数据库自动备份,百度云存储,网站自动备份,自动将VPS上的网站文件和数据库打包备份到百度云盘脚本
百度云盘提供免费的2T云存储空间,而且上传下载速度都非常不错,另外最重要的是,这是百度提供的产品,稳定可靠肯定是不用说啦,这么好的东西,站长怎么能放过呢?PS:本人的所有网站就是备份到百度云盘的。
以下方法特别适合小站长,不需要投入一分钱,即可获得像Amazon S3类似的存储方案。

脚本如下(如何使用请参照本站内VPS分类下文章):

#!/bin/bash

# 常规定义
MYSQL_USER="root"
MYSQL_PASS="password"
baidupan_DIR="/backup/$(date +%Y-%m-%d)"
BACK_DIR="/bdbackup"
# 备份网站数据目录
NGINX_DATA="/etc/nginx"
BACKUP_DEFAULT="/var/www/html"
# 备份网站数据目录
NGINX_DATA="/etc/apache2"
BACKUP_DEFAULT="/var/www/html"
# 定义备份文件名
mysql_DATA=mysql_$(date +"%Y%m%d").tar.gz
www_DEFAULT=default_$(date +%Y%m%d).tar.gz
nginx_CONFIG=nginx_$(date +%Y%m%d).tar.gz
# 判断本地备份目录,不存在则创建
if [ ! -d $BACK_DIR ] ;
then
mkdir -p "$BACK_DIR"
fi

# 进入备份目录
cd $BACK_DIR

# 备份所有数据库
# 导出需要备份的数据库,清除不需要备份的库
mysql -u$MYSQL_USER -p$MYSQL_PASS -B -N -e 'SHOW DATABASES' > databases.db
sed -i '/performance_schema/d' databases.db
sed -i '/information_schema/d' databases.db
sed -i '/mysql/d' databases.db

for db in $(cat databases.db)
do
mysqldump -u$MYSQL_USER -p$MYSQL_PASS ${db} | gzip -9 - > ${db}.sql.gz
done

# 打包数据库
tar -zcvf $mysql_DATA *.sql.gz

# 打包本地网站数据
tar -zcvf $www_DEFAULT $BACKUP_DEFAULT

# 打包Nginx配置文件
tar -zcvf $nginx_CONFIG $NGINX_DATA/*.conf

# upload
cd ~
/root/baidu_uploader/bpcs_uploader.php upload $BACK_DIR/$nginx_CONFIG $baidupan_DIR/$nginx_CONFIG
/root/baidu_uploader/bpcs_uploader.php upload $BACK_DIR/$mysql_DATA $baidupan_DIR/$mysql_DATA
/root/baidu_uploader/bpcs_uploader.php upload $BACK_DIR/$www_DEFAULT $baidupan_DIR/$www_DEFAULT

# Delete all local backup
rm -rf $BACK_DIR
exit 0

PS:如何让脚本自动定时运行请参照本博客内tagVPS备份下的相关内容

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:5   其中:访客  3   小编  2

    • avatar jalena 0

      兄台,脚本我已经更新了!更精炼了!

      • avatar 免费部落 2

        还没用过vps!

          • avatar 老牛 Admin

            @免费部落 你网站不一定要搬到vps上来,但是可以买台来玩玩~~~学习知识

          • avatar Tim 2

            不错~~~我正需要~~~网站在国外主机上~~还是随时备份到国内稳当

              • avatar 老牛 Admin

                @Tim 这必须的~~~国外的其实也可以考虑Dropbox,可能备份速度更快,而且很多程序都有Dropbox的插件,Dropbox是建立在Amazon S3云存储上的,数据可靠性比百度云还要好,主要是没政策风险啊~