我有一个带有 VisualSVN 服务器的 Windows Server 2008 托管存储库。在客户端计算机上,我有 TortoiseSVN 客户端。
如何创建托管在服务器上的存储库的备份,然后将其还原?
我有一个带有 VisualSVN 服务器的 Windows Server 2008 托管存储库。在客户端计算机上,我有 TortoiseSVN 客户端。
如何创建托管在服务器上的存储库的备份,然后将其还原?
来自http://www.visualsvn.com/support/topic/00012/:
svnadmin hotcopy
您可以使用Subversion 命令备份您的存储库。有关详细信息,请参阅Subversion 文档。
请注意,所有其他 VisualSVN Server 相关数据(例如用户权限设置)都存储在您的存储库最顶层文件夹中(默认情况下为 C:\Repositories)。您应该单独备份它们。
要仅保存数据(没有挂钩、配置等),请使用svnadmin dump
. 您甚至可以逐步使用它。
从 Subversion 1.7 开始,您可以通过远程运行 svn dump svnrdump
。
根据您的备份容量,您可以选择始终进行hotcopy,或者偶尔进行一次 hotcopy,更频繁地完成svn dump ,每晚增加svn dump ,等等。
从 VisualSVN Server 3.6 版本开始,该服务器包括一个内置的计划存储库备份和恢复功能。此外,3.6 版本增加了 SVN 存储库的预定验证。
为您的 Subversion 存储库设置计划的存储库备份和验证只需几分钟。有关分步说明,请参阅文章KB106:备份和还原入门。
如果您要查找一次性备份,可以使用 Backup-SvnRepository PowerShell cmdlet。要恢复存储库,请使用Restore-SvnRepository。
从主下载页面下载最新版本的 VisualSVN 服务器。
还有其他几种方法可以备份 VisualSVN Server 存储库。检查下面的简短描述。
1.svnadmin hotcopy
工具
svnadmin hotcopy
允许您制作存储库的安全副本,而不管其他进程是否正在使用存储库。您可以编写一个自定义脚本,该脚本将定期为您的存储库进行备份。
您可以参考 SVNBook 中的以下文章,了解有关 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.卷影复制备份
VisualSVN 服务器及其相关的所有配置都可以使用卷影副本进行备份。
虽然如果在有人提交到 Subversion 存储库时进行卷影复制可能会出现问题,但存储库的最后一个修订版可能已损坏。但是可以使用svnadmin recover
命令轻松恢复。
除存储库外,您应备份以下信息:
存储在存储库根目录中的身份验证和授权文件(默认为'C:\Repositories')。根据您的设置,应该有以下文件:'authz'、'authz-windows'和'htpasswd'。
%VISUALSVN_SERVER%\certs\
存储 SSL 证书信息的文件夹。
%VISUALSVN_SERVER%\conf\
存储 VisualSVN 服务器配置文件的文件夹。
HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN\VisualSVN Server\
存储服务器配置的其他部分的注册表项。