VM和主机之间的SQL链接服务器配置

问题描述 投票:0回答:1

我正在尝试在两台SQL服务器之间建立链接,一台在笔记本电脑上,一台在同一台笔记本电脑上的VM上运行。但是,我遇到了一些令人沮丧的行为。

设置为:

  1. 主机:W10 x64企业版,SQL Server 2019,开发人员。 Windows防火墙已关闭]

  2. VM:W7 Pro x64,SQL Server 2014,Express。 Windows防火墙已关闭

通过此设置,我可以:

  1. 从主机Ping VM
  2. 从虚拟机ping主机
  3. 从主机,使用SQL Management Studio连接到VM上的SQL实例
  4. 从VM使用SQL Management Studio连接到主机上的SQL实例
  5. 从主机创建到虚拟机的链接服务器(使用新建链接服务器...向导)

但是我无法从VM使用相同的链接服务器向导创建到主机的链接服务器。发生的是我在登录过程中收到超时错误。

我所使用的凭据与通过Management Studio连接所使用的凭据相同。我尝试将链接服务器同时创建为“ SQL Server”和“其他数据源”(使用SQLNCLI提供程序),但两种方法均无效。

可能导致此超时的原因:

可能是:

  1. 不同的SQL版本?

  2. Express和Developer版本之间的区别? (我知道我可以在2个不同的Express 2012实例之间建立服务器链接)

  3. 我完全失踪了吗?

sql-server linked-server
1个回答
0
投票

原来是“ 3.我完全想不到的东西”

有点背景。为了支持/测试我桌上的各种网络模型,所有计算机的硬件以太网端口均配置为响应两个不同的子网:192.168.0.xxx(用作5台不同计算机之间的主要传输方式)和192.168。 100.xxx(用于测试各种网络硬件)。

在我在问题中描述的设置中,我具有以下IP地址:

Host: Primary: 192.168.0.99    Secondary: 192.168.100.80
VM:   Primary: 192.168.100.78

因为VM仅需要与192.168.100子网中的主机进行通信,所以我只给了它一个(主)IP地址。这提供了足够的网络连接性,我可以执行问题中提到的所有任务(并在“链接服务器”任务上失败)

原来,解决方案只是更改VM的主IP地址和辅助IP地址,以使它们位于为主机的主IP地址和辅助IP地址配置的匹配子网中。 EG:

 Host: Primary: 192.168.0.99 Secondary: 192.168.100.80 
 VM:   Primary: 192.168.0.49 Secondary: 192.168.100.78

因此,我为VM提供了它实际上不需要的IP地址。完成此操作后,我可以立即创建一个从VM到主机的链接服务器。

对主地址和辅助地址的匹配子网的要求似乎是Windows网络与SQL Server结合在一起的产物。我在尝试使用另一个Windows 10机器进行测试时发现了它,并且具有与最初对VM相同的症状。

© www.soinside.com 2019 - 2024. All rights reserved.