Search code examples
windowssvnbackupsubversion-edge

backup collabnet subversion edge to another hard disk


I've installed Collabnet Subversion Edge, and would like to make sure I have it backed up properly. I would like NOT to use the CloudBackup service offered.

I've went to the administration interface for collabnet (localhost:3343) and went to Repositories > Backup Schedule. There, one can choose between 3 different 'Type of Job':

  • Cloud Services Backup
  • Full Dump Backup
  • Hotcopy Backup

Neither lets you choose where to copy the backup. I've tried looking up how this works, but documentation seems to be lacking a lot.

What is the best way to backup such a repository? Shall I just keep a copy of the entire collabnet folder (c:\csvn)?


Solution

  • You can use Windows Server Backup to backup Subversion repositories. It allows you to shedule backups to a network share, dedicated backup volume, writeable media. For example, wbadmin command-line tool allows you to safely backup your repositories. This simple command performs one-time copy backup of C:\foo\bar to X:\ volume:

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

    (To install Windows Server Backup, run ocsetup WindowsServerBackup in elevated command-prompt).

    You can setup backup in different ways:

    It's not required to stop server's service when you run the backup because FSFS repository backend is always in consistent state.

    Here are general tips about recovering Subversion repository from a backup:

    1. Recover repository backup to an empty directory to make sure that restored repository files won't mix with files of the broken one. After repository if recovered, you can delete broken repository and then replace it with the recovered one.

    2. Stop-start cycle your Subversion server after recovering repository from a backup.

    3. If your clients get errors after repository recover, run svnadmin recover against it. The command finishes instantly and makes repository accessible again.