Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
605 views
in Technique[技术] by (71.8m points)

tfs migration - Complicated TFS 2017 Upgrade

I wish to upgrade my current TFS 2015.3 instance to 2017. It's not going to be quite as easy as advertised, however, due to some complicating factors. My scenario appears to be undocumented.

  1. I'll be installing a new domain controller (moving from Server Essentials 2012 R2 to Server Essentials 2016).
  2. The current OS is Server 2012 R2; I will be upgrading this as well, to Server 2016 (a clean install to a new VM).
  3. Both of these new VMs must retain the same NETBIOS names as before.
  4. The current SQL Server instance is 2014; I will be upgrading this as well, to SQL Server 2016.
  5. The SQL Server instance for the current TFS instance is on a separate VM. I would like to consolidate this and put everything on a single VM. (I'm a solo developer putting a very light load on my server and I want to shed the extra complexity and overhead.)

Is it merely a matter of installing TFS 2017 and restoring from a 2015.3-generated backup? Will 2017 automatically apply any schema changes etc. during the restore process? Could it be that simple?

The closest question I could find to this is here, but unfortunately it doesn't quite address my situation.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

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.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...