把Centos7.6旧系统系统中的svn数据 (SVN 1.7.14版本)
迁移到 新的服务器上 (Ubuntu22 SVN 1.14.1版本)
总体来讲 就三步,备份数据,导入备份,验证。
第一步、备份数据
在 Centos7.6 上备份svn仓库数据,把仓库备份到 tmp/svn_backup.dump
svnadmin dump /var/svn/svnrepos > /tmp/svn_backup.dump
2. 把备份的数据迁移到 Ubuntu新服务器上的 tmp/目录下
scp /tmp/svn_backup.dump root@<Ubuntu服务器IP>:/tmp
3. 在 CentOS 上,打包旧仓库的配置文件svn_conf.tar.gz
cd /var/svn/svnrepos/conf tar -zcvf /tmp/svn_conf.tar.gz .
4. 把备份的配置文件迁移到 Ubuntu新服务器上的 tmp/目录下
scp /tmp/svn_conf.tar.gz root@<Ubuntu服务器IP>:/tmp
第二步、新服务器Ubuntu上安装svn
安装SVN
sudo apt update sudo apt install subversion -y
2. 验证是否安装成功:
svnserve --version
3. SVN 仓库的父目录(例 /var/svn)
sudo mkdir -p /var/svn
4. 创建一个全新的空仓库(仓库名为 svnrepos,与旧仓库同名方便管理):
sudo svnadmin create /var/svn/svnrepos
第三步:导入备份的数据 (svn_backup.dump)
1. 执行导入命令:
sudo svnadmin load /var/svn/svnrepos < /tmp/svn_backup.dump
注意:导入过程可能需要几分钟,取决于 dump 文件的大小
2. 将传到 Ubuntu 服务器上的svn_conf.tar.gz配置文件解压 覆盖新仓库的配置
cd /var/svn/svnrepos/conf sudo tar -zxvf /tmp/svn_conf.tar.gz
3. 检查新仓库的 svnserve.conf 文件,确保以下配置未被注释且正确:
anon-access = none auth-access = write password-db = passwd authz-db = authz
4. 赋予 SVN 服务对新仓库目录的完全读写权限
sudo chown -R www-data:www-data /var/svn/svnrepos sudo chmod -R 755 /var/svn/svnrepos
5. 启动svn
sudo svnserve -d -r /var/svn
6. 完整性校验
svnadmin verify /var/svn/svnrepos
7. 放行端口 3690 云服务器 要到指定的云服务商后台 在安全组 中放行 3690端口
sudo ufw allow 3690/tcp sudo ufw reload
8. 客户端验证 
输入: svn://ip/svnrepos 即可访问新的svn数据仓库

以上!