Why you can’t install Microsoft SQL Server 2005

If you see “SQL Server Database Services” grayed out, do not proceed with the installation. There’s some good reasons why it is grayed out. I am running Windows Vista Business Edition and am trying to install Microsoft SQL Server 2005 Enterprise Edition.

Can’t install Enterprise Edition in non-server version of Windows

The first problem is due to the fact that you cannot install Enterprise Edition into a non-server Windows operating system as stated here. That means to say that Enterprise Edition can only be installed in Windows 2000, Windows 2003 and Windows 2008. If you are using any other operating system, it is likely you are looking for Microsoft SQL Server 2005 Developer Edition or Standard Edition.

Required components of IIS 7 not fully installed

The second problem that I face is SQL Server 2005 complaining that I do not have IIS installed when I already done that. This is because you require the following components installed (their folders and in brackets):

  • Static Content (Common HTTP Features)
  • Default Document (Common HTTP Features)
  • HTTP Redirection (Common HTTP Features)
  • Directory Browsing (Common HTTP Features)
  • ASP.Net (Application Development)
  • ISAPI Extension (Application Development)
  • ISAPI Filters (Application Development)
  • Windows Authentication (Security)
  • IIS Metabase (Management Tools)
  • IIS 6 WMI (Management Tools)

I highlighted the requirements in red for your convenience:

Required IIS components for Microsoft SQL Server 2005
Required IIS components for Microsoft SQL Server 2005

Further information of required components can be found here.

Now after you install Microsoft SQL Server 2005 Whatever Edition, make sure you run Windows Update or download any Service Pack that they offer. This would ensure compatibility to your operating system. I hope that helps. This problem annoyed me whole day.

What I’ve been up to lately

I’ve been busy this couple of weeks hence the lack of updates. I have been working mainly on my tool of choice — CakePHP. I mainly do my work on OS X for PHP. Recently I got involved in working for some software that requires Microsoft SQL Server, PHP and IIS. The whole shift towards the other side slowed me down a lot. I found myself being confused over the tiniest thing like where’s my host file. Where’s the php.ini? How to configure this and that. The terms are seemingly different and watching IIS crash again and again due to me incorrect configurations frustrates me.

On the brighter note, when I working in Windows I actually realized how much I missed Windows Explorer. It’s probably the single most useful utility I miss when I switch to a MacBook.

Since when did I even install Office 2003

I have Office 2007 installed and somehow Office 2003 creep in too. I wonder what did that installation.

Since when did I even install Office 2003
Since when did I even install Office 2003

I can’t even find in in my start menu. Now I have to upgrade something I didn’t install. This is amazing. And my update is almost 700 MB. Really huge.

How to speed read

In this short video Kris Madden shows you how to read faster. The trick, he says, is to repeatedly say “AEIOU” or “one, two, three, four,” as you read. This prevents you from vocalizing the written words with your larynx. Once you train yourself, you can stop uttering “AEIOU,” and you will be able to read much faster than before, or so he says. (from BoingBoing)

How to speed read

Also check out Derren Brown’s blog.

CakePHP 1.2 and PHP 5.3 doesn’t play nice

I just upgraded all the software only to discover PHP got upgraded to 5.3. That’s fast, PHP 5.3 isn’t out too long ago and it’s in the Macosforge repository. Even the CakePHP 1.2.4.8284 update released on August 9 did not include PHP 5.3 compatibility.

Perhaps it’s time to update the CakePHP requirements and be indicative of the lack of support for PHP 5.3.

Now the library is throwing deprecated notices all around “Assigning the return value of new by reference is deprecated in…”. Also there is a PHP warning:

[code lang=”php”]PHP Warning: strtotime(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Singapore’ for ‘SGT/8.0/no DST’ instead in…[/code]

To stop the deprecated notices, I had to modify Cake’s core, not something I like to do.

I added the line “error_reporting (E_ALL & ~E_DEPRECATED);” at the top of /cake/libs/object.php. I also updated /cake/libs/configure.php by changing “error_reporting(E_ALL);” to “error_reporting (E_ALL & ~E_DEPRECATED);”.

[ad#highlight]

This doesn’t solve the problem exactly, it just suppresses the deprecation notices so I can continue working. For a PHP 5.3 compatible CakePHP, you’ll need to use CakePHP 1.3 which currently isn’t stable. I’ll definitely be trying it soon but in the meantime I’ll just have to suppress error reporting.

Update: jdbartlett commented on a better way:

[code lang=”php”]if (defined(“E_DEPRECATED”)) error_reporting(E_ALL ^ E_DEPRECATED);[/code]

If youโ€™re not doing any debugging, you can add the above code to the top of /app/webroot/index.php and suppress the error messages without editing the core. ๐Ÿ™‚

Thanks jdbartlett! You saved me time. ๐Ÿ™‚