SQL Server 2005 命名实例端口问题 [英] SQL Server 2005 Named Instance port problem

查看:39
本文介绍了SQL Server 2005 命名实例端口问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在一台服务器上有 4 个不同的 SQL Server 2005 命名实例(用于测试目的).服务器上没有默认实例.

I have 4 different named instances of SQL Server 2005 on a single server (for testing purposes). There is no default instance on the server.

因为我最终需要允许跨防火墙与这些实例进行通信,所以我已经设置了每个实例的端口,静态侦听服务器的所有 IP.

Because I will eventually need to allow communication to these instances across the firewall, I have set the ports of each instance statically listening on all IPs for the server.

编辑:TCP/IP、共享内存和命名管道均已启用.VIA 被禁用.端口是为 TCP/IP 协议上的所有 IP 静态设置的,每个命名实例都使用一个单独的端口.

Edit: TCP/IP, Shared Memory, and Named Pipes are all enabled. VIA is disabled. The ports are statically set for All IPs on the TCP/IP protocol, and each named instance is using a separate port.

我还运行了 SQLBrowser 服务,并且所有实例都配置为允许远程连接.

I also have SQLBrowser service running, and all instances are configured to allow remote connections.

一个实例被设置为默认端口(1433),它工作正常.

One instance is set to the default port (1433), and it works fine.

然而,其他实例表现出非常奇怪的行为.当我使用网络中的 Sql Server Management Studio 连接到它们时(所以我什至还没有穿过防火墙),工作室连接起来没有任何抱怨.但是,一旦我尝试扩展实例的数据库列表、刷新实例或其他几乎任何内容,我就会收到以下错误:

The other instances, however, exhibit very strange behavior. When I connect to them using the Sql Server Management Studio within the network (so I'm not even crossing the firewall yet), the studio connects without complaining. However, as soon as I try to expand the Database list for the instance, or refresh the instance, or pretty much anything else, I get the following error:

标题:Microsoft SQL Server 管理工作室

TITLE: Microsoft SQL Server Management Studio

无法检索此请求的数据.(Microsoft.SqlServer.SmoEnum)

Failed to retrieve data for this request. (Microsoft.SqlServer.SmoEnum)

如需帮助,请单击:http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476

附加信息:

无法连接到服务器.(Microsoft.SqlServer.ConnectionInfo)

Failed to connect to server . (Microsoft.SqlServer.ConnectionInfo)

已成功与服务器建立连接,但随后在登录过程中出现错误.(提供程序:命名管道提供程序,错误:0 - 管道的另一端没有进程.)(Microsoft SQL Server,错误:233)

A connection was successfully established with the server, but then an error occurred during the login process. (provider: Named Pipes Provider, error: 0 - No process is on the other end of the pipe.) (Microsoft SQL Server, Error: 233)

如需帮助,请单击:http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=233&LinkId=20476

推荐答案

首先要做的是尝试添加前缀 np: 或 tcp: (对于命名管道或 TCP/IP)之前服务器的名称.对于 tcp/ip,您也可以尝试添加端口名称后的数字 (,1433)服务器.如果这不是默认值例如,您必须添加名称服务器名称后的实例;例如:

The first thing to do would be to try adding the prefix np: or tcp: (for either Named Pipes or TCP/IP) before the name of the server. For tcp/ip, you can also try adding the port number (,1433) after the name of the server. If this is not the default instance, you must add the name of the instance after the name of the server; for example:

> sqlcmd -S
> tcp:NameOfTheServer\sqlexpress,1433

删除源链接,因为它现在是一个死链接

removed source link, as it is now a dead link

这篇关于SQL Server 2005 命名实例端口问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆