目录

一、准备环境

二、备份步骤

三、可能出现的问题


一、准备环境

1、两台机器操作系统为window系统,网络要能通信。均安装了VisualSVN-Server服务端:一台源库,一台目标备份库(我本人源库ip地址192.168.6.222,目标备份库ip地址192.168.6.253)

2、源库和备份库的访问路径设置为ip访问,访问方式为http(默认为https访问,需增加配置,否则报错。文章末尾有说明)。

配置方式如下:

(1)打开安装好的VisualSVN Server Manager,右击选择Properties。

(2)在nerwork配置中改ip为本机ip,端口自定义配置,并且不勾选HTTPS选项

(3)在svn服务的安装目录下,进入conf文件夹,编辑httpd.conf,将服务名字(ServerName)也改为ip+端口,并保存

(4)重启svn服务

二、备份步骤

1、按照源库上已有的仓库在目标机器上通过VisualSvn Server建立新的仓库,最好名字一样,这样不会乱,除了名字其他全部默认下一步就可以。(例如我的是源库上有一个GBPT,则在目标库上建立一个GBPT)

2、在目标机器上找到文件目录下新建的仓库,进入hooks目录。(我的是D:\Repositories\GBPT\hooks)。在目录下新建pre-revprop-change.bat 文件,全部内容只有一行:exit 0

3、到源库机器上(我的是192.168.6.222),打开命令行窗口,进入svn服务的安装路径(我的是F:\Program Files (x86)\Subversion\bin,如果添加了svn的环境变量,则可直接运行下边命令,不用管目录,否则会提示不是内部命令)

​svnsync init  http://192.168.6.253:8443/svn/GBPT file:///G:/svn/repository/GBPT
​

其中 http://192.168.6.253:8443/svn/GBPT 为目标源svn库地址(可从VisualSvn Server中复制得到,如下图),file:///G:/svn/repository/GBPT 为源svn库地址(注意:从文件夹地址栏复制出来是反斜杠,需要修改,否则会报错)

执行后,会出现选择项让你选择,输入p(接受)即可。

回车后,会出现一个Administrator的用户名。然后让你输入密码。这个不用理会,直接回车即可。

然后将向你询问登录目标库和源库的用户名和密码,建议为两个库设置相同的用户名及相同的密码

正确后,显示Copied properties for revision0.(也可能是中文的)

执行后可以再次执行一下,如果提示已同步,那么说明初始化已经完成了。

4、执行同步 (这个操作在源库所在服务器的VisualSvnserver安装目录下的bin目录下cmd执行,要不然会提示svnsync不是内部或者外部命令)。正确执行后,首次是全量备份,如果源服务器中仓库的数据较大,同步时间会较长,耐心等待同步完成。

svnsync sync http://192.168.6.253:8443/svn/GBPT

5、在源库服务器上作同步的仓库hooks中创建post-commit.bat 文件,里边输入

​svnsync sync http://192.168.6.253:8443/svn/GBPT --sync-username svn用户名 --sync-password svn密码
​

这样在本地向源库服务器svn提交数据时,就会自动同步到目标库!

三、可能出现的问题

1、svn用https模式访问,这样会导致报错

这个地方可能会出现一个错误(SSL handshake failed: SSL error:Key usage violation in certificate has been detected.)意思是说握手失败,证书无法检验

解决方案:

我用的是win7 64位的系统。

A.首先修改注册表。输入regedit命令,进入注册表

B.找到HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\VisualSVN\VisualSVN Server目录,新建一个"CreateGnuTLSCompatibleCertificate"=dword:00000001

C.打开VisualSVN Server Manager,在操作(Action)下点击Properties->Certificate->  Change certificate,然后下一步下一步就可以了

D.如果还是不行的话,就改变一下登陆的方式,勾选https,再勾选http。然后登陆,就可以解决问题了。

2、从目标版本库获得锁失败

这个问题的原因是在于svnsync的执行过程,因为整个过程是源库读操作,目标库写操作。在执行时,该svnsync程序将锁定被写的目标库,操作完毕之后再解锁。但是由于意外终止了执行过程,于是只进行了锁定却没有进行解锁,导致下次失败。

解决办法:删除版本库属性从0版本开始删除

svn propdel svn:sync-lock --revprop -r 0 http://192.168.6.253:8443/svn/GBPT

执行完后,在重新执行同步命令

window操作系统下SVN通过sync命令增量同步备份,首次全量备份(单机备份双机备份均可)相关推荐

  1. MySQL定时备份(全量备份+增量备份)

    MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份.差异备份.增量备份 更多binlog的学习参考马丁传奇的 MySQL的 ...

  2. mysql 定期备份_MySQL定时备份(全量备份+增量备份)

    MySQL 定时备份 更多binlog的学习参考马丁传奇的 MySQL的binlog日志,这篇文章写得认真详细,如果看的认真的话,肯定能学的很好的. 如果查看binlog是出现语句加密的情况,参考 m ...

  3. 企业级MySQL数据库备份方案:增量备份、全量备份、逻辑备份

    一份好的备份方案无非包括以下几点: 为什么需要备份? 备份的方式有哪些? 某几种备份方式的区别在哪? 备份实战操作概述 恢复实战操作概述 其它备注信息 那么,此文将从以上几个角度,结合一些实际的实战经 ...

  4. mysql全量备份与增量备份_Mysql增量备份与全量备份

    mysqldump备份及binlog日志恢复 详情: http://blog.51cto.com/hongge/1862214 1.首先确保已开启binlog日志功能.在my.cnf中包含下面的配置以 ...

  5. MYSQL增量备份和全量备份脚本分享

    mysql的全量备份与增量备份 全量备份:可以使用mysqldump直接备份整个库或者是备份其中某一个库或者一个库中的某个表. 增量备份:增量备份是针对于数据库的bin-log日志进行备份的,需要开始 ...

  6. MaxCompute 实现增量数据推送(全量比对增量逻辑)

    ODPS 2.0 支持了很多新的集合命令(专有云升级到3版本后陆续支持),简化了日常工作中求集合操作的繁琐程度.增加的SQL语法包括:UNOIN ALL.UNION DISTINCT并集,INTERS ...

  7. mysqldump备份(全量+增量)

    在日常运维工作中,对mysql数据库的备份是万分重要的,以防在数据库表丢失或损坏情况出现,可以及时恢复数据. 线上数据库备份场景: 每周日执行一次全量备份,然后每天下午1点执行MySQLdump增量备 ...

  8. Windows下Solr的安装与配置,附DIH全量导入MySQL数据、IK分词器配置详解——不用集成Tomcat

    Solr是Apache开源的比较稳定的一款全文搜索引擎,也是市面上相对比较流行的一款全文搜索引擎,好不好用你用过之后自有判断.今天给大家分享一下它的安装与配置,我用的是7.7.2版本.废话不多说,开搞 ...

  9. Mysql 增量备份和全量备份

    在日常运维工作中,对mysql数据库的备份是万分重要的,以防在数据库表丢失或损坏情况出现,可以及时恢复数据. 线上数据库备份场景: 每周日执行一次全量备份,然后每天下午1点执行MySQLdump增量备 ...

最新文章

  1. Gym 101933 A(dp)
  2. python读取HDFS文件
  3. 线程并发库和线程池的作用_线程和并发介绍
  4. 谈谈Java编程中的拦截器与过滤器的区别
  5. Chrome 100发布:全新图标,CPU、内存占用暴降!
  6. emacs 编辑模式_作家的5种Emacs模式
  7. 一文速览!多模态预训练中的 Prompt 范式
  8. 云计算机是什么样子,云电脑的配置怎么样?高配与标配的区别是什么?
  9. 用Keil+CMSIS DAP调试NXP S32系列单片机时遇到的问题
  10. SiamRPN++算法详解
  11. 最新可用的快速FLV转MP4方法,解决转换后无声音及视频不流畅问题
  12. 囧妈 一场不需要“电影院”的电影
  13. 复试项目2 直流可变稳压电源
  14. Hive —— Design and Architecture
  15. ensp:使用路由器实现网间通信
  16. pgsql实现json格式转换
  17. .net core依赖注入
  18. bootstrapt 表格自适应_好用的自适应表格插件-bootstrap table (支持固定表头)
  19. Eclipse Java EE+Tomcat问题和Apache整合Tomcat
  20. 错误nested exception is org.apache.ibatis.binding.BindingException

热门文章

  1. B+树、索引以及SQL优化
  2. electron mac tray 当没设置菜单点击不高亮
  3. apple计算机格式,如何在Apple计算机上格式化U盘?
  4. ubuntu20.4安装python3.8
  5. 操作系统课堂同步练习选择题(第二章)题库信阳师范学院柳春华老师
  6. 红蓝对抗-红队渗透下的入口权限快速获取
  7. Spring Security 自定义授权服务器实践
  8. 茶壶在触摸机制下旋转的三种方式
  9. Jenkins 详细介绍
  10. 数字图像处理——第六章彩色图像处理