增量+全量备份SVN服务器
#!/bin/bash # 获取当前是星期几
DAY=$(date +%w)
# 获取当前的日期
DATE=$(date '+%Y-%m-%d-%H-%M')
# 获取当前版本库中最新的版本
CURRENT_VERSION=$(svn info svn://localhost/edu | grep Revision | awk '{print $2}')
# 记录上一次备份到的版本
HAS_BACK_VERSION= if [[ ${DAY} -ne ]];then
############ 增量备
# 计算本次增量备的起始版本号(上一次备份到的版本号 + )
START=$((${HAS_BACK_VERSION} + )) # 起始版本号不能大于当前版本号
if [[ ${START} -le ${CURRENT_VERSION} ]];then
# 开始增量备:从起始版本号到最新版本
svnadmin dump /data/svndata/edu --revision ${START}:${CURRENT_VERSION} --incremental > /data/backup/edu_incr_${DATE}_${START}:${CURRENT_VERSION}.dump
# 将最新版本记录到文件中,作为下一次的基准版本
sed -i "s/HAS_BACK_VERSION=${HAS_BACK_VERSION}/HAS_BACK_VERSION=${CURRENT_VERSION}/g" /data/backup/backup_svn.sh
fi
else
############ 全量备
# 直接全备
svnadmin dump /data/svndata/edu > /data/backup/edu_full_${DATE}_0:${CURRENT_VERSION}.dump
# 记录全备的版本号
sed -i "s/HAS_BACK_VERSION=${HAS_BACK_VERSION}/HAS_BACK_VERSION=${CURRENT_VERSION}/g" /data/backup/backup_svn.sh
fi # 只保留7个文件
NUM=
CURRENT_NUM=$(cd /data/backup && ls *.dump | wc -l) if [[ ${CURRENT_NUM} -gt ${NUM} ]];then
DELETE_NUM=$((${CURRENT_NUM} - ${NUM}))
cd /data/backup && ls *.dump -rt | head -${DELETE_NUM} | xargs rm -f
fi
增量+全量备份SVN服务器的更多相关文章
- SVN全量备份+增量备份脚本
一.全量备份 环境:一台主SVN,一台备SVN(主要提供备份功能),后续可通过钩子脚本进行实时备份,后续发给大家. 工作原理:通过svn的hotcopy命令过行热备份,并进行一系列的检查,备份后通过r ...
- 利用ant脚本 自动构建svn增量/全量 系统程序升级包【转】
引文:我们公司是做自己使用产品,迭代更新周期短,每次都花费较多时间和精力打包做增量更新,发现了一篇文章用于 自动构建svn增量/全量 系统程序升级包,收藏之,希望可以通过学习,更加简化我们的工作. 文 ...
- Centos 6.9 安装xtrabackup-2.4.8 通用包,yum安装,全量备份,增量备份
xtrabackup-2.4.8的安装及使用 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备 ...
- xtrabackup实现全量备份和增量备份
mysql增量和完全备份innobackupex2.1.9版本1 yum安装: 官网地址:https://www.percona.com/doc/percona-xtrabackup/LATEST/i ...
- HBase备份还原OpenTSDB数据之Export/Import(增量+全量)
前言 本文基于伪分布式搭建 hadoop+zookeeper+hbase+opentsdb之后,文章链接:https://www.cnblogs.com/yybrhr/p/11128149.html, ...
- MySQL定时备份(全量备份+增量备份)
MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份.差异备份.增量备份 更多binlog的学习参考马丁传奇的 MySQL的 ...
- mysql全量备份与增量备份
mysql全量备份与增量备份 1.全量备份 全量备份就是把数据库中所有的数据进行备份. 备份所有库: mysqldump -uroot -p456 -S /data/3306/mysql.sock ...
- mysql备份脚本,每天执行一次全量备份,三次增量备份
线上一个小业务的mysql备份 全量备份 #!/bin/bash #crete by hexm at -- #scripte name : full_backup.sh #descriptioni : ...
- mysql 全量备份与增量备份
全量备份[root@master adm]# cat DBfullBak.sh #!/bin/bash #use mysqldump to fully backup mysql data BakDir ...
随机推荐
- jmter 5.1 中文
一.jmeter5.0下载解压后,默认的界面是英文版的,许多人觉得不方便,想要汉化,jmeter是不需要安装汉化包的,通过修改配置文件即可:1.找到jmeter解压后的文件夹,例如我是安装在D:\De ...
- 剑指offer第二版面试题4:替换空格(JAVA版)
题目:请实现一个函数,把字符串中的每个空格替换成“%20”.例如输入“We are happy”,则输出”We%20are%20happy”. 原因:在网络编程中,如果URL参数中含有特殊字符,如:空 ...
- linux内核编译时如何根据spec指定编译包
问题: 1> rpmbuild -bb SPECS/kernel.spec --define="_topdir `pwd`" 编译 出的包并未包含kernel-firmwar ...
- Ubuntu终端内打开文件管理器
本文首发于cartoon的博客 转载请注明出处:https://cartoonyu.github.io/cartoon-blog 近段时间在ubuntu中搭建jdk并在jdk的 ...
- hdu 3123 2009 Asia Wuhan Regional Contest Online
以为有啥牛逼定理,没推出来,随便写写就A了----题非常水,可是wa了一次 n>=m 则n!==0 注意的一点,最后 看我的凝视 #include <cstdio> #includ ...
- 响应断言和json asstion
1.要勾选Additionallly assert value才可以输入下面的预期结果哦
- Java中++操作是同步的吗?为什么?
不是同步的 因为++操作分为三步实现 内存到寄存器 寄存器自增操作 寄存器写回内存 这三步每一步都可以被打断,不是原子操作,所以不是同步操作
- 推荐20个让你学习并精通CSS的网站
1. A List Apart CSS Topics A List Apart,学习网页设计和最佳实践的首选网站.这个网站从1999年就开始发表关于CSS的文章,其中大部分文章都是面向那些更注重符合标 ...
- 使用ribbon实现负载均衡
使用ribbon之前的准备工作: 1.你要有两个服务,一个是服务消费方(下图的xing-movie是消费方),一个是服务提供方(xing-user是服务提供者),并且服务提供方要有两个实例,也就是xi ...
- 召回率、AUC、ROC模型评估指标精要
混淆矩阵 精准率/查准率,presicion 预测为正的样本中实际为正的概率 召回率/查全率,recall 实际为正的样本中被预测为正的概率 TPR F1分数,同时考虑查准率和查全率,二者达到平衡,= ...