sql-server - 如果不指定端口号,ssms 无法连接到默认的 sql server 实例

标签 sql-server sql-server-2005 networking ssms

我在一个盒子上有多个 SQL Server 2005 实例。从我桌面上的 SSMS,我可以毫无问题地连接到该框的命名实例。最近更改了一些网络配置后,当我想从桌面上的 SSMS 连接到默认实例时,我必须指定端口号。在网络更改之前,我不必指定默认实例的端口号。

如果我远程访问任何其他框(包括有问题的框),并使用那个框的 SSMS 连接到该默认实例,则成功。在我的桌面上,而且只能在我的桌面上,我必须指定端口号。

它是我错过的 SQL Server 配置吗?是否有可能是我的 PC 配置中出现了问题?我应该去哪里寻找,或者我可以将什么传递给网络人员以帮助他们解决这个问题?感谢您的帮助。

最佳答案

1434端口被沿线某处屏蔽,用于解析实例名到端口号。

如果您指定端口号,实例名称将被忽略...

SQL Server Browser service listens on port 1434

Upon startup, SQL Server Browser starts and claims UDP port 1434. SQL Server Browser reads the registry, identifies all instances of SQL Server on the computer, and notes the ports and named pipes that they use. When a server has two or more network cards, SQL Server Browser returns the first enabled port it encounters for SQL Server. SQL Server Browser support [sic] ipv6 and ipv4.

When SQL Server clients request SQL Server resources, the client network library sends a UDP message to the server using port 1434. SQL Server Browser responds with the TCP/IP port or named pipe of the requested instance. The network library on the client application then completes the connection by sending a request to the server using the port or named pipe of the desired instance.

评论后编辑:

本地客户端默认设置是什么?它当然应该是 1433,但如果不是,那么 servername 将不起作用。

启动“SQL Server 配置管理器”..“SQL native 客户端配置”..“客户端协议(protocol)”..双击 tcp/ip,本地 PC 使用的默认端口就在那里。

关于sql-server - 如果不指定端口号,ssms 无法连接到默认的 sql server 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2745525/

相关文章:

sql - 查找所有要查看的引用文献

SQL 将 INSERT SELECT 也转换为 UPDATE

networking - ISO8583报文解码

c# - 获取网络接口(interface)连接到的网络名称

.net - SqlServerSpatial110.dll 无法在 Windows Azure 部署上复制

sql-server - SQL Server错误: String or binary data would be truncated

sql-server - SQL Server 2005 复制

sql-server - 在 PowerShell 中将字符串拆分为单独的字符串

sql-server - 如何将Sql列转换为行?

c++ - 检测 CancelIoEx 是否同步取消