Linux中SVN的備份與恢復


linux中SVN備份有三種方式

1、svnadmin dump 是官方推薦的備份方式,優點是比較靈活,可以全量備份也可以增量備份,並提供版本恢復機制。

缺點是版本數過大,增長到數萬以上,那么dump與load過程都將非常慢,耗時長不利於快速進行災難恢復。在版本數較小的情況下可以使用這種備份方式。

2、svnadmin hotcopy 只能進行全量拷貝,不能進行增量備份。優點是備份較快,恢復也快。缺點是比較耗費硬盤。

3、svnsync實際是制作2個鏡像庫,當一個壞了的時候可以迅速切換到另一個。需1.4以上版本支持,這里不討論。

 

svnadmin dump方式:

1、全量備份一個倉庫:

#svnadmin dump /svn/svn/APP > /svn/svndump/APP_dump160802

在另一台機器上配置同樣的SVN服務器導入dump出來的備份文件

#svnadmin load /svn/svn/APP < APP_dump160802

將原先服務器的配置文件備份后復制到新服務器中 authz、passwd、svnserver.conf

2、增量備份

#svnadmin dump /svn/svn/APP -r 5200:5600 --incremental > /svn/svndump/APP_5600   

5200是上次全量備份時的最新版本,5600是當前最新版本。

導入:svnadmin load /svn/svn/APP < APP_5600

svnadmin hotcopy方法:
1. 備份

svnadmin hotcopy /svn/svn/APP/ /data/svn.`date +%F:%T`.bak –clean-logs

如果傳遞–clean-logs選項,svnadmin會執行熱拷貝操作,然后刪除不用的Berkeley DB日志文件。
你可以在任何時候運行這個命令得到一個版本庫的安全拷貝,不管其它進程是否使用這個版本庫。
2. 還原

svnadmin hotcopy /home/svn.`date +%F:%T`.bak  /home/svn.`date +%F:%T`.bak


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM