`
mozhenghua
  • 浏览: 328518 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

SVN 主从复制方案

阅读更多

SVN 主从复制方案,主要是为了解决svn服务器大并发量访问的问题,根据svn读写的2/8原则,应该把读写分流将对SVN服务器读操作都引流到从(slave)机器上:

以下是svn 官方文档( http://svnbook.red-bean.com/en/1.5/svn.ref.svnsync.html ,http://svnbook.red-bean.com/en/1.5/svn.reposadmin.maint.html#svn.reposadmin.maint.replication)说叙述的关于svnsyn命令的使用方法

 

 

 

▋官方的文档中只说明了主从全量同步的方案,但是没有很说明增量同步的方法。 看到一篇不错的文章介绍了几种svn库备份方法一种就有一个讲到用svnsync来作备份的方案,这个方案中我觉得最精妙的是用mount的方法来做增量更新 http://www.blogjava.net/jasmine214--love/archive/2010/09/28/333223.html

mount方法的确能够解决从主服务器上通知从服务器触发同步的过程,但是从公司sa的同学了解到,他们非常不建议使用mount的方式来做这个同步操作,原因是mount命令经常发生问题。

 

其实在通过在网上找的很多资料来看,大部分的文章是通过系统的定时程序来完成主从同步的,也就是定时,比如30分钟让从服务器执行一次同步操作。这样虽然不能保证在主服务器和从服务器实时同步,但是实现方式是简单的。想想也是,svn主从服务器之间没有必要保证实时同步。

 

在最终的实现方案是在系统中是采用ssh命令,在post-commit 的hook脚本中执行下面这条命令

 

/usr/bin/ssh remotehost "svnsync sync file://$1" | tee -a /usr/baisui/logs/svnsync.log 2>&1

 来让svn从服务器增量更新,使用这条命令需要实现在主服务器和从服务之间打通信任认证,这个可以参考(http://mozhenghua.iteye.com/blog/1155256)这篇博客。

 

 

▋相关的操作命令

 

  1. svn配置文件  vi /etc/httpd/conf.d/subversion.conf apache配置文件 /etc/httpd/conf/httpd.conf       
  2. svn 同步初始化  svnsync initialize file:///var/www/repos/svnrepos/slaver  http://10.9.24.161/aaa  --sync-username slaver --sync-password 123456
  3. svn的用户名密码 /etc/httpd/conf.d/.passwd
  4. 为某个用户添加执行权限  chmod +x pre-revprop-change
  5. 将本地svn服务器与主服务器同步  svnsync sync file:///var/www/repos/svnrepos/slaver                                               

 

 

 

 

分享到:
评论

相关推荐

    互不连接的两个SVN双向同步方法

    面对这种情况,我们可以采取手动操作的方式进行模拟,以下是一种可行的解决方案。 首先,我们需要在两个不同的地点分别设置两个独立的SVN服务器,分别称为repository-1和repository-2。每个开发团队成员都将使用...

    svn-sync-process-csdn.docx

    ### Subversion (SVN) 同步流程...以上步骤详细介绍了如何从头开始搭建SVN同步环境,包括主从仓库的配置、初始化以及数据同步的过程。这些知识点有助于读者更好地理解和掌握SVN同步机制,从而高效地管理和维护SVN仓库。

    iOS简历冯宋林1

    5. **数据库管理**:他对MySQL和Oracle数据库有深入理解,能进行存储、库和表设计,使用SQL,还了解性能优化策略,如mysqldump+binlog和lvm+binlog备份,以及主从复制和读写分离。 6. **监控工具**:他熟练使用...

    使用Mogilefs做海量图片的分布式存储 安装配置.doc

    1. **数据库**:至少两台服务器,主从模式,用于存储namespace、文件存储位置、domain、class等信息。建议配置至少32GB内存和8个CPU核心。 2. **Tracker服务器**:至少两台,用于管理复制、删除、查询、重试写入和...

    网站架构技术

    解决方案: 不同的数据库都有自己的数据库的主从复制功能 使用反向代理与CDN加速网站响应 反向代理产品 ngix 使用分布式文件系统和分布式数据库系统 使用no-sql和搜索引擎 站内搜索 lucene ...

    豆瓣网技术架构

    为了确保数据的高可用性和安全性,还实现了主从复制策略进行备份。 #### Web框架与Web服务器 - **Quixote**: 作为一种简单的Python Web框架,Quixote因其轻量级特性而被采用。它支持实现RESTful URL,并且易于集成...

    系统运行演示

    - **高可用性**:MySQL支持主从复制、分区等功能,可以实现高可用和高性能。 - **跨平台**:MySQL可以在多种操作系统上运行,包括Windows、Linux等。 综上所述,这些知识点涵盖了从Web框架到数据库管理系统的各个...

    小米电商Mongodb集群文档

    副本集则是一种高可用性的解决方案,通过复制数据来提供容错能力。 #### 标签解析 - **Mongodb sharding Cluster** - 分片集群(Sharding Cluster)是MongoDB的一种扩展机制,它将数据分成多个片段,并将这些片段...

Global site tag (gtag.js) - Google Analytics