【问题标题】:Cannot connect to SQL SERVER Instance on a server with multiple SQL INSTANCE无法连接到具有多个 SQL 实例的服务器上的 SQL SERVER 实例
【发布时间】:2019-09-11 15:59:12
【问题描述】:

背景:我有一个 Windows 服务器,其中安装了 2 个 SQL 2016 实例(SQLEXPRESS,SQLLICENSED)SQLLICENSED 一个是我安装的。

问题:我可以在我的电脑上使用SQLEXPRESS 远程连接,但似乎无法连接到本地服务器外部的SQLLICENSED 实例。

我使用<IPAddress>\SQLLICENSED 访问它。但是得到了通用连接错误“A network-related....”。我尝试使用安装了两者的 Windows 服务器本地访问实例,我可以使用 <IPAddress>\SQLLICENSED 进行连接,所以这是一个远程访问问题。

到目前为止我尝试过的解决方案:

  1. 启动/重新启动 SQL Browser 服务
  2. 为入站和出站添加了 tcp 端口 (SQLLICENSED)

  1. 关闭防火墙(用于测试)
  2. 在 SQL 配置管理器中启用命名实例

但是这些都没有解决问题。非常感谢您的指导。

【问题讨论】:

  • 您的 SQL Server Browser 服务是否已启动?
  • “我尝试使用安装了两者的 Windows 服务器本地访问实例,但我无法连接” - 你是说你也无法在本地连接吗?服务启动了吗?
  • @metal 是的,你可以看到这是我尝试的第一件事。开始然后重新启动。我可以远程访问同一服务器上的另一个实例我认为这不是问题吗
  • @Nick.McDermaid 对不起,我的意思是我可以使用两个实例的 IP 地址在本地连接。问题是如果我在外面访问它

标签: sql-server sql-server-2016


【解决方案1】:

一般来说,当你在同一台服务器上运行多个实例时,以下是强制性的:

除此之外,通过以下步骤,由于您能够在本地连接,请验证从服务器属性 启用了Allow remote connection

故障排除步骤:

  1. 确保TCP/IP Protocol is enable

  2. 确保 SQL 浏览器正在运行:它管理端口 1433 上的入站连接并识别实例的名称,然后最终重定向到命名实例侦听的动态端口。所以你不必在windows防火墙上打开动态端口号。

  3. 在防火墙处打开端口号:SQL 浏览器服务的重定向活动(如步骤 1 中所述)使用 UDP 端口#1434 进行。所以你想在windows防火墙上启用TCP: 1433UDP:1434

  4. 两个步骤都完成后,重启SQL Browser服务,应该可以成功连接命名实例了

  5. 如果问题仍然存在,请重新启动 SQL 服务,并查看 SQL 错误日志以获取以下消息(1533 是自定义端口,您应该找到已配置/活动的端口号例如:SQLLICENSED)

留言:
服务器正在监听 ['any' 1533]。

如果您想使用custom port configuration,请在 TCP 端口中输入端口号,然后重新启动 SQL 服务,在这种情况下,您的连接应该为 <IPAddress>,<PortNumber>

P.S:我个人建议在多实例设置中使用自定义端口,这样会更可靠且不依赖 SQL Browser 服务

【讨论】:

  • 遵循自定义端口配置步骤,它工作!!!!现在唯一的问题是由于某种原因只有我可以连接。使用相同凭据的其他用户无法进入。关闭防火墙允许他们连接。知道为什么会这样吗?
  • 其他的有什么不同?他们在不同的计算机上?
  • @TheProvost,这意味着您可能没有为其他用户的连接添加自定义端口,或者自定义端口未添加到防火墙规则中。无论如何,您不必禁用防火墙。
  • @Nick.McDermaid 是的
  • @ShekarKola 自定义端口不适合所有人?那是如何管理的?我使用上面给出的教程对其进行了更新,但是当我们连接到 SQL 时,我们都使用 sa(sql admin)帐户,所以我很困惑如何为其他“用户”设置客户端口
猜你喜欢
  • 2015-06-03
  • 2015-08-08
  • 1970-01-01
  • 1970-01-01
  • 2011-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多