导读
本文主要是讲 SVN 仓库的全量备份和增量备份,只包括基本操作.
仓库备份
svnadmin dump
备份方式多样
如果版本数过多,dump的过程将非常慢
备份耗时,恢复更耗时
备份时数据变大,恢复后数据可能会变小
仓库下的passwd和authz不会备份
全备份
在需要备份SVN仓库的服务器上执行如下命令
sudo svnadmin dump /path/repository > /path/repository-backup.2019-12-27
做版本0-2的备份
sudo svnadmin dump /path/repository -r 0:2 --incremental > /path/repository-backup_0-2.2019-12-27
incremental 参数说明
它使用增量方式来导出版本,即每次都只导出自上一个版本以来的修改。这样的好处是:
第一:可以把一个大的文 件切分成若干个小的文件。
第二:在版本库已经存在的情况下,我们只需要每次导出修改的部分,不需要每次都导出整个版本库的内容。
甚至可以通过hook脚本 每天晚上自动将当天的修改dump出来做备份用。
仓库迁移
使用SCP等工具,将备份的文件传输到目标服务器上,例如 /home目录下.
# 建立新的svn仓库
sudo svnadmin create /path/new_repository
# 导入数据
sudo svnadmin load /path/new_repository < /home/repository-backup.2019-12-27