Why Not to Sysprep SQL Server

If you do a lot of installs its a good idea to have an automated process for provisioning SQL Server. A lot of people try to use "sysprep"

Here's a few reasons why not to use sysprep.

  • Its not supported by Microsoft CSS.
  • SQL will not work properly until it is "renamed".
  • If you have reporting services it will be messed up to.
  • The System and Network Service accounts will get new SID and passwords, so if you have used these as service accounts there will be some pain.
  • SQL Server creates a good few local groups with the format. SQLServer2005MSSQLUser$<Server>$MSSQLSERVER. Its not supported to rename these
  • It just doesn't feel clean ;-)

If you do want to plod on here's some links and tips

- How to rename SQL Server

http://msdn.microsoft.com/en-us/library/ms143799.aspx

- Renaming a Report Server Computer

http://msdn.microsoft.com/en-us/library/ms345235.aspx

- Don't start the SQL Server when sysprep is taken. This can help resolve the issues with SID values.

Alternative Approach

The best alternative is to add the pre-requisites to the base image, sysprep the computer WITHOUT SQL Server installed and then have the installation fully automated via a configuration file as per http://msdn.microsoft.com/en-us/library/dd239405.aspx 

or with SQL 2005 you'll need the command line approach

http://msdn.microsoft.com/en-us/library/ms144259(SQL.90).aspx