Tricky SQL Server Install on 64-bit Machines 

Most of my test servers are still 32-bit machines. It’s not until recently that I have started to use 64-bit machines for testing. The big reason for the 64-bit platform is better performance for large databases given that you can allocate up to 2TB of memory on these monster machines. Database servers love extra physical memory. The SQL Server architecture is essentially the same on either platform. One difference is that the new feature of SQL Server 2008 R2 named Master Data Services is only available with the 64-bit editions. This was my motivation for getting started with 64-bit. Strange but true.

Microsoft Exchange is only available on the 64-bit platform. So is Windows Server 2008 R2. Surely, SQL Server will follow suit at some point as hardware costs continue to decline. Maybe as early as SQL11 but the initial Denali CTP1 has been released for both 32 and 64-bit. Intel was the first to support Windows with a 64-bit chip named Itanium for the IA64 platform. The trouble with IA64 is there is no true 32-bit backward compatibility so in this case being first to set sail meant nothing as AMD came out with the AMD64 (x64) architecture including the valuable 32-bit compatibility. Intel has since shifted tack to subsequently support the x64 platform through its latest chips but a major iceberg appeared earlier this year when Microsoft stated that it will no longer support the original IA64 platform making the architecture more akin to the Titanic than Itanium.

Installing SQL Server 2008 R2 on a 64-bit machine proved more troublesome than expected. Everything goes swimmingly until the end of the setup when it just hangs on the following step:

SqlEngineDBStartConfigAction_install_configrc_Cpu64

Optimistically leaving it running overnight does nothing and terminating the setup lets you know that you will need to uninstall before re-installing – setup won’t try taking over where it left off like it used to – I tried that with no luck. The same hanging behavior occurred with both Windows 7 and Windows Server 2008 R2 64-bit editions. Not only that, the same occurred with the Denali CTP1 (aka SQL 11) that was handed out at the PASS Summit. Dang.

After searching for a day, I finally found the solution. There is an article on MSDN Blogs on “Windows 7 AppCompat changes and SQL Server client and setup hangs”:

http://blogs.msdn.com/b/sql_protocols/archive/2010/08/13/windows-7-appcompat-changes-and-sql-server-client-and-setup-hangs.aspx

Yes, it comes down to a simple registry hack to turn on something called “Switchback” that forces Windows to “switch back” to the way it worked before. If only life was this simple.

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat

“To allow SQL Server client drivers to connect, set the SbEnable value to 1 and restart the machine”

Well, I followed the instructions and, hey presto, SQL Server 2008 R2 x64 installs completely after the uninstall. Even Denali CTP1 x64 installs too. Thank goodness for Google. OK, I used Bing a little too. In this season of sharing let’s spread the goodwill a little.

In this article

Join the Conversation