Complicated TFS 2017 Upgrade

天大地大妈咪最大 提交于 2019-11-27 15:50:53

Instead of doing a detach/attach upgrade there is another option available to you. detach/attach upgrades have had issues in the past and though most of these issues have been fixed, it's considered a suboptimal solution.

Instead, perform an Upgrade Installation.

Take a full backup of all your TFS 2015u3 databases and restore them to the new SQL server instance. You can create the full backup using the Team Foundation Server Admin Console, or use SQL Server Management Studio after stopping all TFS services on each Application Tier (in your case there is probably only one) using

TFSServiceControl quiesce

Now install TFS 2017 and perform the "upgrade" installation and point it to your existing databases. It will ask you if you want to upgrade them and whether you have a valid backup.

And after some time (upgrades can take a while, as data is moved around the databases), your TFS server will come back online. The installation wizard usually does all the mapping work required.

There is one big caveat, and that has to do with domain changes. If you are installing in the same Windows Active Directory domain, you're good. But if your server is running in Workgroup mode you may want to remap all the identities in your TFS database prior to running the upgrade step. So install TFS, but do not configure yet. Run the following command

TFSConfig Identities /change /fromdomain:Domain1 /todomain:Domain2

Then use the upgrade option to have TFS use your database backups. The full explanation on doing a cross domain server migration is documented on MSDN. Be sure to safeguard your pre-upgrade backup until you've verified a successful upgrade.

We face almost the same thing, as our server was created for TFS 2013 and therefore has SQL 2012 installed.

Yes, it actually is as easy as your question states. When you attach the collection that you restored form the backup all the schema changes will be applied. Before then you configure the app tier of TFS and skip

An important thing though is to detach the collection before doing the backup. This copies various configuration into the collection database so that it is self-contained and can be moved to another server. You then only move the collection database to the new server.

Here is how in list form:

  1. Detach collection using TFS Admin Console
  2. Backup collection database using SSMS, e.g. Tfs_YourCollection
  3. Restore collection database on new server using SSMS
  4. Install TFS
  5. Configure app tier, skip creation of new DefaultCollection
  6. Attach collection in the TFS Admin Console, might take some time depending on your collection size.

You can do 4+5 before 3.

Note: Changing domain can add complexity. SharePoint and Reporting sites are not migrated!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!