How do I… install SQL Server 2005 Express Edition and SQL Server Management Studio Express?

With the release of SQL Server 2005 Express Edition and the SQL Server Management Studio Express, Microsoft has entered the small, free database market with a splash trumping even their own Microsoft SQL Desktop Edition. Although it is free, it is still important for you to install this application correctly, Scott Lowe shows you how.

With the release of SQL Server 2005 Express Edition and the SQL Server Management Studio Express, Microsoft has entered the small, free database market with a splash trumping even their own Microsoft SQL Desktop Edition. SQL Server Management Studio Express -- a full-featured management tool comparable to the legacy SQL Server Enterprise Manager -- makes this entry-level database software usable and formidable for running small businesses, small Web sites, and more.

To get SQL Server 2005 Express Edition install on your server, follow these steps.

Click this tag search to find other How Do I… articles and downloads.

Step 1: Download SQL Server 2005 Express Edition

The SQL Server 2005 Express Edition download page has three separate downloads for you to consider.

Table A -- Decide which features you need for your installation



SQL Server 2005 Express Edition SP1

SQL Server 2005 Express Edition with Advanced Services SP1

SQL Server 2005 Express Edition Toolkit SP1

Database engine




Client software




Full-text search




Reporting Services




Management Studio Express




Step 2: Identify system requirements

SQL Server 2005 Express Edition does not have significant system overhead requirements, particularly given the overpowered nature of many of today's newest servers. The minimum system requirements for the various SQL Server 2005 versions are:

Table B -- System and software requirements for SQL Server 2005 Express Edition




SQL Server 2005 Express Edition SP1

SQL Server 2005 Express Edition with Advanced Services SP1

SQL Server 2005 Express Edition Toolkit SP1

RAM (minimum)

192 MB

512 MB

512 MB

RAM (recommended)

512 MB

1 GB

1 GB

Drive space

600 MB

Processor (minimum)

600 MHz

Processor (recommended)

1 GHz

IIS 5 or higher




Operating systems supported

Windows Server 2003 SP1, Windows Server 2003 Enterprise Edition SP1,

Windows Server 2003 Datacenter Edition SP1, Windows Server 2003 Web Edition SP1, Windows Small Business Server 2003 Standard Edition SP1, Windows Small Business Server 2003 Premium Edition SP1, Windows XP Professional SP2, Windows XP Home Edition SP2, Windows XP Tablet Edition SP2, Windows XP Media Edition SP2, Windows 2000 Professional Edition SP4, Windows 2000 Server Edition SP4, Windows 2000 Advanced Edition SP4, Windows 2000 Datacenter Server Edition SP4

Software prerequisites

.NET Framework 2.0 & MSXML 6

Other requirements

Server joined to your Active Directory domain.

I highly recommend that you don't use one of your existing servers for this purpose. If you don't have any reasonable spare hardware, consider using VMware Server or Virtual Server 2005 R2 and creating a virtual machine. Both products are free, and great for creating test beds. SQL Server 2005 requires the .NET Framework 2.0, which breaks some applications, so keeping the database separate is a good idea.

Step 3: Install database software prerequisites

I mentioned above that there are a number of software prerequisites for SQL Server 2005 Express Edition. Before you can install the database software, you need to take the necessary steps to get these items installed.

Install the following items in order.

Internet Information Server 5 or higher

If your Windows server does not have IIS installed, go to Start | Control Panel | Add or Remove Programs | Add/Remove Windows Components.

.NET Framework 2.0

Download the .NET Framework 2.0 (x86) from here. After downloading, execute dotnetfx.exe and follow the instructions to complete the installation. I'd show a screenshot, but there's really not a whole lot to see!


Download MSXML6 from here. Execute msxml6.msi. This is a quick installation.

Step 4: Create a SQL Server service account

From a security perspective, it's best to run SQL Server as a normal everyday user. When possible, don't use the built-in service accounts on your SQL Server as this practice does not limit your server's attack surface as much as using an unprivileged user account.

Create a domain account named "SQLExpressUser" for this purpose. If you're joined to a domain -- which you should be -- use Active Directory Users and Computers. If you're just testing locally, use Computer Management to add the account. Make sure to also assign a strong password to the account.

I have also configured this user account so that the password does not expire. In addition, anyone logging in as this user -- no one should be doing that though -- will not be able to change the password.

Step 5: Install SQL Server 2005 Express Edition

For this article, I am installing SQL Server 2005 Express Edition with Advanced Services SP1. The name of the downloaded file is SQLEXPR_ADV.EXE. Double-click this file to start the product installation. The contents of the file are extracted and the installation begins.

After you start the installation, you have to agree to the typical End User License Agreement after which you're presented with a screen that shows you what prerequisites you need to get the express edition on your system. The installer will handle the installation of these prerequisites for you. Click the Install button to install these items. Once the items are installed, click the Next button.

Figure A

The new Native Client and the Setup Support Files need to be installed.

Once the prerequisites are in place the SQL Server installation wizard will start. The first screen you're shown provides you with a list of items that may or may not give you trouble if you continue the installation. In Figure B below, you can see that my test system has a warning regarding the minimum hardware requirements. I am installing SQL Server 2005 Express Edition into a VMware Server-based virtual machine and the installer doesn't seem to like that I have allocated only 768MB RAM to the virtual machine when it really wants 1GB. However, this warning is not a show-stopper, so I'll continue. Note that the installer provides you with a complete status report to make it easy for you to determine what needs to be done. Click Next to continue.

Figure B

If you have any serious problems, correct them before you continue.

After that, you have to provide your name and, optionally, your company's name. I have also unchecked the box marked "Hide advanced configuration options" so you can get a look at these options during the installation.

Figure C

Provide registration details for your server installation.

Next, you get to choose which features you want to install. Even though the Express Edition is free, it includes many of the features found in the Standard and Enterprise editions. I've decided to install everything except replication. Note that I've opted also to install the Management Studio Express. This is an outstanding utility provided by Microsoft and it replaces Query Analyzer and Enterprise Manager. I highly recommend you install this tool. I'm installing into the default location, C:\Program Files\Microsoft SQL Server. If you want to install to a different location, click the Browse button to choose this new location.

Figure D

Decide which features you want to install. The only one you absolutely need is the Database Services option, but the others are very useful.

Instances were introduced in SQL Server 2000 and provide a way for you to more seamlessly serve multiple databases from a single SQL Server. SQL Server 2005 Express Edition supports up to 16 named instances while the Enterprise Edition supports up to 50. For my installation, I'm installing SQL Server 2005 Express Edition as the default database instance on my server.

Figure E

Choose your instance.

Service accounts are used in order to better protect your SQL Server -- and the rest of your network -- in the event of a security breach. If you run your SQL Server under an administrative account, you run the risk of additional damage should your server be compromised. Therefore, run SQL Server 2005 Express Edition under a user account with few, if any, rights.

Figure F

Use the account you created before as the service account for SQL Server 2005.

SQL Server can authenticate users in two ways: (1) directly against Active Directory (Windows Authentication Mode); (2) against its own database (Mixed Mode, since Windows Authentication is also supported). From a security perspective, Windows Authentication mode is highly preferred. First off, you have only a single user database -- Active Directory -- to worry about.

However, Windows Authentication Mode is not always appropriate. For example, I've had better luck scripting against a Mixed Mode SQL Server versus a Windows Authentication Mode SQL Server. If you choose Mixed Mode (which you should) you will also need to provide a password for the SQL Server 'sa' user. Make sure that you assign a strong password if you take this route.

Figure G

Choose the mode under which you want to authenticate SQL Server users.

The next step of the installation involves selecting a collation method, which defines the way that your SQL Server will sort data. If you need to maintain backward compatibility with older versions of SQL Server, you should choose SQL Collations. If, however, you do not need to worry about backward compatibility, you should choose the Latin1_General collation method, unless, of course, you're using a different language.

Figure H

Choose your collation method.

SQL Server 2005 Express provides a new feature: The ability to run sub-instances of the product under a normal user account. User instances are useful in situations in which users are logged into Windows under a least-privileged user account. Using user instances, the user can still have SQL system administrator privileges to their SQL "sandbox", but the rest of the system is protected since the user's primary account does not have rights to make global changes. Databases housed under user instances support only a single connection and higher-end features such as replication are not supported.

If you want to support user instances in your installation, make sure the checkbox next to "Enable User Instances" is selected.

Figure I

Decide whether you want to enable support for user instances.

Introduced as an add-on for SQL Server 2000, an enhanced version of Reporting Services is included with SQL Server 2005. For your small SQL Server 2005 Express Edition installation, I recommend that you install this feature, but don't worry about customizing the configuration. The default configuration places the tool at http://{your server name}/ReportServer. The Report Manager tool is placed at http://{your server name}/Reports.

If you decide to use SQL Server 2005 and Reporting Services in a production environment, make sure to obtain an SSL certificate for use with the Reporting Services site, which is housed in IIS. I'll provide another "How Do I" article that explains how to install a certificate in IIS.

Figure J

Reporting Services is a welcome addition to SQL Server.

Microsoft has included an error reporting tool in other applications for quite some time. This feature is now optionally included in SQL Server 2005 Express. Further, Microsoft wants you to send them anonymous usage data about your installation. Neither option is enabled by default. Personally, I like the error reporting service and the only way it will improve is by adding data. I don't like sending usage data, however. While it's supposedly confidential, it doesn't directly benefit my installation.

Figure K

Decide what information you want to send to Microsoft.

These are all of your options for SQL Server 2005 Express Edition. Continue on to install the product using these selections.

Figure L

The installation's progress.

In some cases, your installation may fail with errors reported for the SQL Native Client and the SQL Server Database Services. In addition, the Workstation Components selection may indicate a failure. If this happens to you, it may be because you formerly had a conflicting SQL Server service on the machine and the Native Client previously installed is creating a problem. If this is the case for you, follow these steps:

  1. Change to the directory in which you saved the downloaded SQL Server Express 2005 installer.
  2. Extract the contents of the installer to a new directory: SQLEXPR_ADV.EXE /x:c:\sqltmp. If you are using the download that does not contains the advanced services, this command is SQLEXPR.EXE /x:c:\sqltmp instead.
  3. Change to C:\sqltmp\setup.
  4. Execute "sqlncli.msi"
  5. Choose the "Uninstall" option.
  6. Reboot your server.
  7. Run the SQL Server Express 2005 installer again. It should be successful this time around.

Installed and ready

At this point, SQL Server 2005 Express Edition is installed and can be managed using the SQL Server Management Studio Express tool that was installed along with the database server. To access this tool go to Start | All Programs | Microsoft SQL Server 2005 | SQL Server Management Studio Express.

In my next article, I will show you how to manage your new database installation using the Surface Area Configuration tool and the Management Studio Express.