自动备份服务器数据的脚本


折腾了一个脚本,要点把服务器目录下的文件同步到SVN 目录下,然后提交給SVN进行备份

好处,SVN 是增量备份,网站传了图片,只增加这部分图片的备份。

之前一直用压缩包,发现,1G压缩包的网站文件,随便改了个图,又要备份1G的压缩包

backsite.sh

TIME=`date "+%Y-%m-%d %H:%M:%S"`
echo "site:"$TIME >> /backup/backupwebsite/time.log
export LANG=zh_CN.UTF-8
str=b2b2017,b2b2017admin,watch,watch_admin  
var=${str//,/ }    #这里是将var中的,替换为空格  
for v in $var   
do  
    WEB_NAME=$v
    echo $v
	BCK_DIR="/backup/backupwebsite/website/$WEB_NAME"
	DATE=`date +%F`
	mkdir -p $BCK_DIR
	rsync -av /www/$WEB_NAME/ $BCK_DIR
done 
 
svn update /backup/backupwebsite/ --username yuexiaosheng --password 123456 --no-auth-cache
svn add /backup/backupwebsite/* --force --username yuexiaosheng --password 123456 --no-auth-cache
svn ci -m '' /backup/backupwebsite/ --username yuexiaosheng --password 123456  --no-auth-cache

backmysql.sh

str=b2b2017,b2b2017admin,watch,watch_admin

这个是批量的要点,决定了主要网站目录下 /www/下那些目录自动同步过来

svn update /backup/backupwebsite/ --username yuexiaosheng --password 123456 --no-auth-cache

–username yuexiaosheng –password 123456 –no-auth-cache 带上账户和密码,否则root 的crontab 定时命令无效。

下一个脚本 批量备份数据库,组合SVN 可以自动提交

提出质疑:mysql是否带增量备份的机制呢

str=watch,think_b2b,b2b,bug
var=${str//,/ }    #这里是将var中的,替换为空格  
for v in $var   
do  
	DB_NAME=$v
	echo $v
	BIN_DIR="/usr/local/mysql/bin"
	DATE=`date +%F`
	BCK_DIR="/backup/backupwebsite/mysql/single/$DB_NAME"
	mkdir -p $BCK_DIR
	$BIN_DIR/mysqldump  --default-character-set=utf8 --opt $DB_NAME | gzip > $BCK_DIR/$DATE.gz
done 
TIME=`date "+%Y-%m-%d %H:%M:%S"`
echo "mysql:"$TIME >> /backup/backupwebsite/time.log

MYSQL 采用了压缩包的方式

核心思路:将网站的重要文件全部备份到SVN里 实现增量备份。然后利用我上一篇文章的windows 下 SVN自动执行的命令,就可以自动的拖到本地来。 SVN 跨平台比较好。

实现了远程服务器文件,自动增量备份到本地机器。

当然如果是Linux服务器之间的远程双机备份,不需要通过SVN 有很多办法同步文件的。之前也弄过。

觉得部分人还是只有一台服务器的。自动备份到自己的电脑,避免自己忘记了什么一周一备份的事情。

如果你是一名技术人员可加我QQ 2651-0442-02,如果你是java技术人还可以加入QQ群 1784-9136-0
你将得到的不仅仅是技术的交流,还有职业机会,人生解惑.
首发地址:月小升博客https://java-er.com/blog/auto-backup-website-data/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
此条目发表在 Linux, Windows, 技术管理, 数据库 分类目录。将固定链接加入收藏夹。
既然来了,就评论一下,不会怀孕的

自动备份服务器数据的脚本》有 1 条评论

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">