I’ve seen this question come up a lot in the newgroups: “I already have SQL Server 2000 installed, can I install SQL Server 2005 side-by-side with SQL Server 2000?” The short answer is yes. SQL Server is a multi-instanced product which means that with the exception of some shared files each instance of SQL Server has it’s own copy of the binaries and it’s own hive in the registry. This means you can install multiple instances of SQL Server 2000 on a single machine, multiple instances of SQL Server 2005 on a single machine, and you can have multiple instances of both SQL Server 2000 and 2005 on a single machine. During the installation of SQL Server 2005 you are prompted to provide an instance name, so long as you provide a unique name it will install side-by-side with all other instances of SQL Server already installed on the machine, regardless of product version and edition. If you try to install using an instance name already in use you will be aked if you want to upgrade the existing instance.
We spent a great deal of effort during the development of SQL Server 2005 to insure backward compatibility and side-by-side support. However, there are some things you should be aware of. To provide the greatest level of backward compatibility we did not reGUID a few COM components. Doing so would have required customers to change their applications to work with SQL Server 2005. We didn’t want to impose this requirement on customers. Therefore, SQL Server 2005 installs some shared files (COM components) to a SQL Server 2000 location (%program files%\Microsoft SQL Server\80\COM and %program files%\Microsoft SQL Server\80\tools). The file versions in SS2K5 are higher so they’ll overwrite the SS2K files. But applications using the SS2K version should continue to function – the COM registration remains the same and the components were tested for backward compatibility. Future patches of SS2K will include the newer versions of these files.
Because we changed installer technology from SS2K (InstallShield) to SS2K5 (Windows Installer) we don’t recommend installing SS2K after SS2K5. When SS2K5 is installed side-by-side with SS2K it goes through some special logic to make sure the aforementioned shared components aren’t removed when SS2K is later uninstalled. If SS2K is installed post SS2K5 that same logic isn’t executed and later uninstalling SS2K will break the registration of those COM components which will in turn break your SS2K5 installation. You can repair that installation by running setup in repair mode (see Books Online for more information on running setup in repair mdoe), but you have to remember to do that.
If you have had experiences (good or bad) with installing side-by-side please leave me a comment.