Simple Migration of TFS 2012 Express to TFS 2012 Full Version

Starting to dig a little bit deeper into TFS 2012, I noticed that my local TFS 2012 Express installation had not all the features I saw on Team Foundation Services (tfs.visualstudio.com/), which I was using too. Of course, if I had read the docs, I might have known before that TFS 2012 Express is not a fully featured TFS – but I never have heard of real programmers who care about docs 😉

So I downloaded the TFS full version and started the installation, hoping it will notice the existing Express instance and start a migration wizard. Well, the installation noticed that there was an existing Express instance. But it did not start a migration wizard. Instead, it told me to uninstall TFS 2012 Express first.

Since I didn’t wanted to lose my existing projects and items, I created a backup of the Tfs_Configuration and the Tfs_DefaultCollection databases frist. Please notice that TFS 2012 Express requires these databases to be run by the SQL Server Express instance on your machine. Because I wanted to have the TFS full version to run on the SQL Server full instance, I restored these databases to that instance, saving the database files to a different location (just change the settings in the restore dialog of SQL Server Management Studio).

After having the databases restored, I uninstalled TFS 2012 Express and started the TFS 2012 Full Version installation. After a while, a tool opened up where I could choose the type of installation (can’t remember the tool’s name). Here, I selected “Application Tier only”. The wizard found both the port and database settings of the already uninstalled Express version. Fortunately, one can change the database setting. Just enter the name of the SQL Server instance TFS should use. If it is installed locally, do not enter “(local)”. TFS is not able to use this setting (will be checked during installation). After a few more clicks, where I did not changed any default value, the installation continued and completed successfully.

My Visual Studio connected to the TFS Full Version without changing any settings, and all items were present too. In case you miss some of the shiny features, maybe you need to adjust the access level.

Here is, in short words, what I have done to migrate the TFS 2012 Express installation to TFS 2012 Full on my local machine:

  • Created a full backup of my machine (aka a snapshot of the VM)
  • TFS used by one user only, no Domain infrastructure
  • SQL Server 2012 (full) already installed (local too)
  • Backup TFS databases from SQL Server Express and restore it to SQL Server 2012 with different file path
  • Uninstall TFS 2012 Express
  • Add Full Text Search to SQL Server 2012, if not already installed (required by TFS 2012)
  • Install TFS 2012 Full Version, select “Application Tier only” when installation comes to that point
  • Change the database to the one hosted by the SQL Server instance, do not use SQL Express
  • Install Build Server if you like to (or need it)
  • Adjust the access level, if required.
    If you like a full featured list, you might want to have a look at tfs2012visualguide.codeplex.com/. Or you might want to download the official installation guide from here: www.microsoft.com/en-us/download/details.aspx?id=29035.