安装sql server2008后再安装sql 2005找不到本地服务器的解决方法

问题背景

在安装完SQL Server2008后,有些用户还需要安装另外一个版本的SQL Server——SQL Server2005。但安装完后,会发现找不到本地服务器,引起用户的不便。

问题分析与解决

1. 原因分析

这个问题是由于在安装SQL Server2008后,.NET Framework 3.5 SP1的共享DLL文件被更新,导致SQL Server 2005的.NET Framework运行库不能正常访问,无法启动SQL Server 2005服务。

同时,如果在SQL Server2008安装程序中选择了默认的实例名称,则SQL Server2008将使用相同的默认实例名称,这样就覆盖了SQL Server 2005默认实例名称 MSSQLSERVER,使得SQL Server2005和SQL Server2008不能共存。

2. 解决方案

2.1 避免安装默认实例

可以在安装SQL Server2008时,避免安装默认实例。通过在安装时指定新的实例名称,例如 MSSQL2008,这样就不会覆盖原来的 SQL Server2005 实例名称 MSSQLSERVER。

如果已经安装了默认实例,可以通过SQL Server重新命名功能更改实例名称来恢复原有的默认实例名称,具体操作方法可以参考 Microsoft 官方文档:MOVE SQL SERVER INSTANCE ID

2.2 手动注册.NET Framework 2.0 SP1 和 3.5 SP1

首先,需要下载并安装.NET Framework 2.0 SP1 和 3.5 SP1。通过CMD运行以下两条命令分别注册.NET Framework 2.0 SP1 和 3.5 SP1的所有组件。

 

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

%windir%\Microsoft.NET\Framework\v3.5\Microsoft.VisualBasic.Vsa.dll /codebase

这两条命令各注册一套 DLL,用于确保所有.NET Framework的组件都得以正确安装,这样SQL Server2005 和 SQL Server2008 就可以共存了。

2.3 使用 SQL Server Configuration Manager

可以通过 SQL Server Configuration Manager 来解决这个问题。首先,需要确认 IIS(Internet Information Services)和 SQL Server 安装的组件都已经正确安装好了。

打开 SQL Server Configuration Manager,找到 SQL Server 2005 的 SQL Server 服务和 SQL Server 2008 的 SQL Server 服务,查看两个服务的侦听 (TCP/IP) 的状态是否开启,如果开启则可以通过 TCP/IP 连接上 SQL Server。

如果没有开启,则需要手动启用该服务,并设置侦听 (TCP/IP) 状态为开启。可以通过以下步骤来启用 SQL Server 2005 的 TCP/IP 服务:

在 SQL Server Configuration Manager 中展开 SQL Server2005 Services。

找到 SQL Server(SQLEXPRESS) 服务,右键点击选择 Properties。

选择 IP Addresses 标签页,找到下方区域的 IPAll,将 TCP Dynamic Ports 和 TCP Port 设置为 1433。

重新启动 SQL Server 2005 服务。

同样的,也可以通过上述步骤来启用 SQL Server 2008 的 TCP/IP 服务。

2.4 卸载 SQL Server2008

如果上述方法都不可行,那么就需要卸载 SQL Server2008,重新安装 SQL Server2005。

卸载SQL Server2008的具体步骤可以参考 Microsoft 官方文档:Uninstall an existing instance of SQL Server (Setup)

总结

以上就是安装 SQL Server 2008 后再安装 SQL Server 2005 找不到本地服务器的解决方法。在使用 SQL Server 2005 和 SQL Server 2008 时,我们需要注意版本和实例名称,避免有冲突的情况产生。

数据库标签