我知道我们应该知道这样的短语,但突然所有我的连接localhost\sqlexpress
停止工作。由于.\sqlexpress
和(local)\sqlexpress
的工作,如果不是因为我正在开发一个团队项目,其中所有连接字符串都是以前格式定义的,这并不是什么大问题。显然我很难接受它不应该工作了,所以我花了几个小时分析和重新安装几个SQL Server版本无济于事。 (并在VS2010中打破数据库项目的方式,所以我需要重新安装以及...)。无法连接到数据库使用本地主机 sqlserver
但这里有细节。如前所述,我无法连接到localhost\sqlexpress
,而是连接到.\sqlexpress
。使用SQL Server Manager的相同症状以及用于部署和运行wcf服务的连接字符串。有趣的是足够解决默认实例localhost
的作品。
首先,首先,SQL Server正在运行,只是为了确保启用TCP/IP并将端口固定为1433,尽管它在禁用TCP/IP的同事机器上工作。 (在我读的一路上,localhost
可以在使用本机SQL客户端时使用共享内存来解析,所以我猜这就是他的系统上发生的情况。)
安装程序只有一个SQL Server Express 2008 R2实例和VS2010在Windows 7专业版上。
启动了SQL Express的错误日志说:
Server is listening on [ 'any' <ipv6> 1433].
Server is listening on [ 'any' <ipv4> 1433].
的Netstat说(节选):
TCP 0.0.0.0:1433 Machinenename:0 LISTENING
TCP [::]:1433 Machinenename:0 LISTENING
我注意到没有127.0.0.1:1433任何UDP上端口1433
为了诊断问题我使用sqlcmd找出使用什么传输:
1.本地主机\ SQLEXPRESS
sqlcmd -Slocalhost\sqlexpress -> Shared memory
sqlcmd -Stcp:localhost\sqlexpress -> SQL Server Network Interfaces: Error Locating Server/Instance Specified
无法从SQL Server Management Studio连接到本地主机\ SQLEXPRESS即使我指定的共享内存作为协议
2.本地主机
sqlcmd -Slocalhost -> TCP
sqlcmd -Stcp:localhost -> TCP
可以从SQL Server Management S连接到本地主机tudio
3(本地)\ SQLEXPRESS
sqlcmd -S(local)\sqlexpress -> Shared memory
sqlcmd -Stcp:(local)\sqlexpress -> SQL Server Network Interfaces: Error Locating Server/Instance Specified
可以连接到(本地)\从SQL Server Management Studio中SQLEXPRESS
所以我在这里丢失。任何帮助,高度赞赏。