Microsoft SQL Server 2008 Express with Advanced Services is a free download and is sufficient for many small and medium sized deployments with database size requirements not more than 4 GB.
If you ever tried to install MS SQL 2008 Express with Advanced Services on Windows 2008 R2 machine you would be greeted with Program Compatibility Assistant as below.
If you still click on Run Program you will get an Setup failure dialogue
This is because Windows 2008 R2 supports MS SQL Server 2008 integrated with Service Pack 1. But SQL 2008 Express with Advanced Services with SP1 is not available for download from MS.
Note: SQL 2008 Express and SQL 2008 Express with Advanced Services are different. Click here for the difference.
We have to slipstream SQL 2008 SP1 to SQL 2008 Express with Advanced Services to get it installed on Windows 2008 R2.
Download 64 bit SQL 2008 Express with Advanced Services and SP1 from links below if you do not have them. Windows 2008 R2 is 64 bit only OS.
Here I have SQL Express and SP1 installers on Desktop and used a directory called SQL2008withSP1 on D Drive for slipstreaming.
Note: These locations and names can be replaced according to your convenience.
Issue below command to extract files from installer. This will automatically create the folder if not already present.
Now we have to extract SQL Server 2008 Service Pack 1 to a subfolder called PCU under the folder to which SQL Express installer files were extracted.
To do this, issue below command
Now we have to copy Setup.exe and Setup.rll from PCU to the main installer directory with the help of below commands.
Note 1: robocopy is a command line utility available in windows 7 for earlier OS download Windows 2003 Resource Kit tools here
Note 2: To know more about robocopy on Wikipedia click here
Note 3: Click here to know command options
robocopy D:\SQL2008withSP1\PCU D:\SQL2008withSP1 Setup.exe
robocopy D:\SQL2008withSP1\PCU D:\SQL2008withSP1 Setup.rll
After Setup.exe and Setup.rll are copied we have to copy all files in x64 folder in PCU directory to x64 folder under SQL2008withSP1 directory except “Microsoft.SQL.Chainer.PackageData.dll” using below command
robocopy D:\SQL2008withSP1\PCU\x64 D:\SQL2008withSP1\x64 /XF Microsoft.SQL.Chainer.PackageData.dll
Create a file called DefaultSetup.ini with below text in x64 folder under SQLwithSP1directory and not under PCU folder.
;SQLSERVER2008 Configuration File
Now start installation using setup.exe from the SQL2008withSP1
Edition of SQL is Express with Advanced Services
Before Installation starts you see Action Install as Slipstream
Hope this was helpful.
Note: Cross posted from Experience – Inspire – Contribute.