有哪些方法可以備份 Windows VisualSVN 儲存庫?

有哪些方法可以備份 Windows VisualSVN 儲存庫?

目前我們正在使用 Visual SVN,並且正在備份 Visual svn 的整個儲存庫目錄。這會備份 svn 引擎內每個儲存庫的全部資料。我很好奇在發生緊急情況或災難時是否能夠恢復這些文件?你們有人有此恢復過程的經驗嗎?謝謝。

答案1

看: http://www.visualsvn.com/support/topic/00012/

這指向以下文檔:
http://www.visualsvn.com/support/svnbook/reposadmin/maint/#svn.reposadmin.maint.backup

它描述如何使用 Subversion 指令進行備份。我希望這就是您已經在做的事情,因為直接進行目錄備份可能會導致儲存庫不可用。

您應該能夠使用 Subversion 中的備份並使用svnadmin dumpsvnadmin hotcopy命令來還原完整的儲存庫。但是,與任何備份策略一樣,您必須親自測試復原以確保它適合您。

答案2

從 VisualSVN Server 3.6 版本開始,伺服器包含內建計劃儲存庫備份和恢復特徵。此外,3.6 版本還新增了 SVN 儲存庫的定期驗證。

為您的 Subversion 儲存庫設定計劃的儲存庫備份和驗證只需幾分鐘的時間。有關逐步說明,請參閱文章KB106:備份與復原入門

如果您尋找一次性備份,您可以使用 備份-SvnRepositoryPowerShell cmdlet。若要恢復儲存庫,請使用恢復-SvnRepository。這些備援 cmdlet 從版本 3.6 開始可用。

從下列位置下載最新版本的 VisualSVN Server主要下載頁面

在此輸入影像描述


下面過時的答案。

有多種方法可以備份 VisualSVN Server 儲存庫。檢查下面的簡短描述。

1.svnadmin hotcopy工具

svnadmin hotcopy允許您建立儲存庫的安全性副本,無論其他進程是否正在使用該儲存庫。您可以編寫一個自訂腳本來定期備份您的儲存庫。

您可以考慮 SVN 書中的以下文章來了解有關 Subversion 儲存庫備份的更多資訊:http://www.visualsvn.com/support/svnbook/reposadmin/maint/#svn.reposadmin.maint.backup

2.svnsync工具

這就是增量備份方法。增量備份方法僅備份自上次備份以來儲存庫資料變更的部分。您可以將此工具設定為“主”和“從”,並自動將任何提交複製到其儲存庫。

有關更多詳細信息,請參閱“svnsync”文章:http://www.visualsvn.com/support/svnbook/ref/svnsync/

3. Windows 伺服器備份。您可以使用 Windows Server Backup 來備份 Subversion 儲存庫。它允許您將備份安排到網路共用、專用備份磁碟區、可寫入媒體。例如,wbadmin命令列工具可讓您安全地備份您的儲存庫。這個簡單的指令執行C:\foo\bar到磁碟區的一次性複製備份X:\

wbadmin start backup –backupTarget:x: -include:c\foo\bar -vsscopy

(若要安裝 Windows Server Backup,請ocsetup WindowsServerBackup在提升的命令提示字元中執行)。

您可以透過不同的方式設定備份:

運行備份時不需要停止伺服器服務,因為FSFS 儲存庫後端是始終處於一致狀態

以下是有關還原 Windows Server 備份的一般提示:

  1. 將備份還原到空目錄,以確保復原的儲存庫檔案不會與損壞的檔案混合。儲存庫恢復後,您可以刪除損壞的儲存庫,然後用復原的儲存庫取代它。

  2. 從備份還原儲存庫後停止-啟動循環伺服器。

  3. 如果您的用戶端在儲存庫恢復後出現錯誤,請執行svnadmin recover反對。該命令立即完成並使存儲庫再次可存取。


除儲存庫外,您還應該備份以下資訊:

  1. 儲存在儲存庫根目錄中的驗證和授權檔案('C:\存儲庫'預設情況下)。根據您的設置,應該有以下文件:'授權','authz-windows''htpasswd'

  2. “%VISUALSVN_SERVER%\certs”資料夾,用於儲存有關您的 SSL 憑證的資訊。

  3. “%VISUALSVN_SERVER%\conf”資料夾,用於儲存 VisualSVN 伺服器的設定檔。

  4. “HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN\VisualSVN Server”登錄項,儲存伺服器配置的其他部分。

答案3

我正在這樣做:

svnadmin dump "c:/Repositories/svnroot" > c:/backup/svnroot_%date%.dump

您也可以 rar/zip 它以節省空間。當我將 SVN 從 Linux 遷移到 VisualSVN 時,我使用了相同的方法,因此此備份可以正常運作。

答案4

另一個選擇是熱拷貝。它會備份您的整個儲存庫。佔用更多的磁碟空間,但非常容易運行,也很容易使用它來恢復儲存庫。

相關內容