我在服务器上安装了SQL Server 2000,我遇到了奇怪的连接问题。
使用SSMS我无法使用Configuration Manager上的Alias连接到它。 Alias设置为使用TCPIP,这是共享内存下面的第一个协议。如果我使用与Alias完全相同的服务器名称,那么我可以正常连接。
我在ASP.NET应用程序中看到完全相同的行为,使用别名我得到连接失败,使用它连接的名称就好了。 ASP.NET连接字符串未指定协议。
答案 0 :(得分:1)
使用服务器名称将使用客户端的默认连接协议。 这可以命名为pipes或tcp / ip(MDAC版本,升级vs安装等)。
Alias设置为使用TCPIP 下面的顺序中的第一个协议 共享内存
我假设如果客户端别名设置为使用tcp,则服务器仅配置为侦听命名管道,因此它仅适用于服务器名称。客户端最终会在其使用的协议列表中找到命名管道。
要进行测试,请将servername替换为np:servername和tcp:servername,以使用别名更改协议而不使用。
或检查服务器正在侦听的内容并修复...
另一个选项是非标准TCP端口(服务器,而不是1433)或阻止访问端口1433/1434的防火墙。
答案 1 :(得分:0)
别名是否指定了协议?该协议是否被服务器接受?这是您在按姓名连接时使用的协议吗? (即客户协议的顺序是什么)