svnsync实现版本库的同步备份
生活随笔
收集整理的這篇文章主要介紹了
svnsync实现版本库的同步备份
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
svnsync實現版本庫的同步備份? 實驗環境: A,172.17.201.243(主) B,172.17.201.88(備) 項目需求,生產環境要求svn服務器實現熱備機制,于是就想到了svn自帶的svnsync機制,操作流程如下: 1、在要備份的機器上(172.17.201.88)建立版本庫 mkdir -p /home/svn/SH2014/SVNdata
svnadmin create /home/svn/SH2014/SVNdata
2、進入備份機器(172.17.201.88)版本庫SVNdata下的hooks目錄。
cd /home/svn/SH2014/SVNdata/hooks/3、創建pre-revprop-change文件
cp pre-revprop-change.tmpl pre-revprop-change4、修改pre-revprop-change權限,更改為755
chmod 755 pre-revprop-change5、修改pre-revprop-change內容
為 echo “Changing revision properties other than svn:log is prohibited” >&2 exit 0(1修改為0)說明如下:
原腳本的意思是如果修改的是svn:log屬性,將允許修改,返回0;否則,不允許,返回1 我們要將它改為允許修改所有的屬性,在腳本中直接返回0 6、在備份機器上執行同步初始化操作 svnsync init file:///home/svn/SH2014/SVNdata http://172.17.201.243/SHSVN/SVNdata --username "svnadmin" --password "adminpassword"會出現以下信息:
Copied properties for revision 0.7、在備份機器上執行同步操作
svnsync sync file:///home/svn/SH2014/SVNdata會出現以下信息:
Transmitting file data . Committed revision 1. Copied properties for revision 1. Transmitting file data . Committed revision 2. Copied properties for revision 2. Transmitting file data . Committed revision 3. Copied properties for revision 3.出現以上信息就說明同步成功了。
8、設置備份庫的uuid,uuid是respository創建時自動生成的一個隨機數,SVN Client利用uuid判斷是否為同一個庫。 進入主機,查看主機庫的uuid svnlook uuid /home/svn/repos 會顯示主機庫的uuid 78312468-8f6a-4e0c-9dc4-2b397672ca84進入備份機,查看備份機新建庫的uuid
svnlook uuid /home/svn/SH2014/SVNdata會顯示新建庫的uuid
c7717876-c1c0-4c6c-9b12-70b43bd7116b將新建庫的uuid改成與主機庫的uuid相同
svnadmin setuuid /home/svn/SH2014/SVNdata 78312468-8f6a-4e0c-9dc4-2b397672ca84再次查看新建庫的uuid
svnlook uuid /home/svn/SH2014/SVNdata會顯示新庫的uuid與主機庫的uuid相同了
78312468-8f6a-4e0c-9dc4-2b397672ca849、配置Apache和權限
?
當出現主機宕機需要備份機馬上頂上去時,修改一下IP即可。 客戶端如果已經有checkout的項目,則需要relocate,relocate 前提條件就是uuid是相同的。轉載于:https://www.cnblogs.com/bajie22/p/5435127.html
總結
以上是生活随笔為你收集整理的svnsync实现版本库的同步备份的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: System x Windows Ser
- 下一篇: [算法] vector删除元素