linux svn 增量备份脚本,subversion迁移过程中增量备份脚本

在过程中,我采用svnadmin hotcopy来导出数据,建议使用svnadmin dump来全量,因为旧的是1.4.x版本,要的新服务器版本为1.6.6,所有在导入dump文件的时候会出错,可能是subversion的bug的,当文件过去后,为了保证数据的完整性,需要对库进行最后一次,这时候就不需要全量了,只需要把更新的内容添加下。

在subversion工作过程中,当subversion有更新时,他就会记录顺序号,无限递增,所以我们只需要之后的就ok!

下面是一段简单的备份:

#!/bin/bash

svn_repos=”/svn/roc”   #要备份的库

backup_dir=”/home/linlp/backup”     #备份文件存放路径

rsync_repos=”/home/linlp/roc”       #hotcopy已经的库

next_backup_file=”add_incremental_backup.”.`date +%Y%m%d`

log=”$backup_dir/last_backed_up”.`date +%Y%m%d`   #日志文件

echo “********************”`date`”***************”>> $log

echo “SVN ADD DUMP start!”>> $log

first_rev=”`/usr/local/subversion/bin/svnlook youngest $rsync_repos`”        #上一次备份库的版本号

last_rev=”`/usr/local/subversion/bin/svnlook youngest $svn_repos`”             #现在源库的版本号

if [ $first_rev  -eq $last_rev ];then

echo “No new revisions to backup.”

exit 0

else

echo “Backing up revisions $first_rev …”

/usr/local/subversion/bin/svnadmin dump –incremental –revision

$first_rev:$last_rev $svn_repos >

$backup_dir/$next_backup_file           #取中间值

fi

echo “Fist:$first_rev”>> $log

echo “Last:$last_rev”>> $log  #记录备份的版本号

echo “********************”`date`”***************”>>$log

我们来看下记录的日志:

********************Wed Dec 21 11:54:04 CST 2011***************

SVN ADD DUMP start!

Fist:24468

Last:24476

********************Wed Dec 21 11:55:37 CST 2011***************

说明这次备份是从24468更新到27796

注意:备份处理的文件只是dump文件,要导入库才可以使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值