Without an external database
If you are not using an external database the process is pretty easy:
- Use the UI to backup the TeamCity data
- Install TeamCity on the new server
- Copy the backup data to the new TeamCity Data Directory (usually "C:\ProgramData\JetBrains\TeamCity")
- Set the projects from hidden to visible in the administration area.
With an external database
If you, like we, use an external SQL database for TeamCity the migration is a totally different ball game.
- I backed up the data again with the UI like above.
- For restoring I used this documentation.
I ran into a few problems:
- It was imperative to not startup the site before running the maintainDB command.
- I needed to allow TCP/IP connections to the SQL instance.
- I had some problems with my Java installation (ClassNotFoundException jdbc.SQLServerDriver - it seemed the additional 32bit installation caused the problems). These two articles helped me.
- I also ran into some problems to get the TeamCity projects on the new server running: