With SQL 2008 shipping late last week it was time to try my hands at this scenario. It worked great but with a few things to remember. Here is the lowdown.
There are two way to go about in order to install TFS with SQL 2008 1) Fresh install, 2) Upgrade SQL.
1) Fresh Install
I used Windows 2008 because this is going to be the prevalent OS to install on when people are going to start fresh or it most likely will. There was a little issue with that install when Windows 2008 RTM’ed back in February and I talked about it in this post. I wanted to see if the WSS issue was resolved in SP1. Well the good news is yes. When installing TFS, the experience is now the same for Windows 2003 and Windows 2008 and to boot, the SP1 now updates the WSS bits on the RTM DVD to WSS 3.0 SP1. Cool.
The problem is SQL 2008 now. You can’t use TFS 2008 RTM to install with SQL 2008. You need to slipstream (or Integrate) the SP on top of the RTM bits. The new install instruction covers this but here is a step by step.
a) Copy the original Media to a folder on any machine say d:\tfs\RTM
b) Extract the SP to a folder say d:\tfs\SPExtract
c) Create a directory to put the result of the integration in say d:\tfs\ATIntegrated
d) Integrate (slipstream) the SP to the AT install by using this command line (note if you are in Windows 2008 make sure you start you console window as an Administrator or you’ll get prompted by UAC when executing the command).
msiexec /a d:\TFS\RTM\AT\vs_setup.msi /p d:\TFS\SP1Extract\TFS90sp1-KB949786.msp TARGETDIR=d:\TFS\ATIntegrated
e) Once you have done this make sure you copy back the ATIntegrated content to the original AT in the d:\TFS\RTM\AT overriding the original content.
Now you might be tempted to do the same integration with the Build and Proxy directory since they both have a vs_setup.msi file I know I was and actually did. You can’t. I works (well it looks like it does) but when you run the setup, it fails miserably. This is documented by Microsoft to NOT do that for Build and Proxy. You need to install the RTM version and then run the SP on top of it. It would have been nice to have a new DVD with all component SP’ed but it’s not to be.
f) After you have copied back the content to the original RTM directory, just burn a new ISO or DVD and you’re ready to install it.
If you want to have Team Explorer (TE) on your server to create new project like I do, you need to install it BEFORE you install SQL 2008 and apply the TE SP1 also before IF you want to install the client tools as part of the SQL 2008 install which you most likely will to manage backups and verify tables, etc. This problem is fully explained in this KB, Visual Studio 2008 SP1 may be required for SQL Server 2008 installations. If you want to create an all in one server with Studio and Build for example you need to follow the same procedure. Here is an ordered list;
i) Windows (2003/2008) + IIS
ii) VSTS and/or TE 2008
iii) SP1 of VSTS and/or TE (it’s the same one that installs for all version of VS/VS Core, you need to run it once for anything component you have installed)
iv) SQL 2008 + Component like DB, RS, AS, Client Tools, etc (follow the install guide instructions, i'll try to post an unattended install file when I have one)
v) TFS SP1 (integrated), this will now install WSS properly for both Windows 2003 and Windows 2008 so no need to install it before.
vi) TFS Build + TFS SP1 (which is a different SP then the VS one)
vii) TFS Proxy + TFS SP1
viii) Office components (note this can be anytime I just like to install at the end)
You should then be in business… at least I was. It took about 3h considering I already had a base 2008 VM. The SP takes a long time to install but it works fine. Double-click and wait.
Note that this is the way I did it. I just read a few minutes ago that if you are starting fresh you can install SQL 2008 with everything you need and then install VS on top of it and then apply the SP. That sounds weird to me since a version of VS SP will be already installed when you try to install VSTS RTM… would that work… I haven’t tried. According to Aaron it should… Hold off on installing SQL 2008 if you have Visual Studio 2008 RTM installed - for now (see on the bottom of this post). I know what I just documented works I’ve done that.
2) Upgrade SQL
Well that’s a bit trickier, Chris Rathjen from Microsoft sent me this info about that upgrade path
i. Start downtime
ii. Upgrade SQL2005 to SQL2008; AT will stop working at this step
iii. Apply TFS SP1 (and VS sp1 if the client is on the AT); AT will work again
iv. Verify full functionality
v. End downtime
If you apply SP1 before the upgrade, there’s an extra step:
i. Start downtime
ii. Apply TFS SP1 (and client…)
iii. Upgrade SQL2005 to SQL2008; AT will stop working at this step
iv. Repair TFS AT; AT will work again
v. Verify functionality
vi. End downtime
Well there you have it a somewhat complete picture of the upgrades and installs of the various Service Packs. It was much less painful than the VS 2005 experience and I have to give kudos to Microsoft for that. That was a hard experience. I hope this will be useful to you, and don’t hesitate to leave me a comment if you have any issues and I will get answers for you.
Matthew had a good comment on SQL 2008 SP1. You need to do a bit more hacking to get TFS 2008 SP1 to install on an SQL 2008 SP1. Follow the instructions available in this KB: How to install Microsoft Visual Studio 2008 Team Foundation Server on a computer that has SQL Server 2008 Service Pack 1 installed