如何连接到运行在虚拟机上的数据库?

5
我这里有个问题,对我来说似乎有点复杂。希望我的表述清楚明白。 :)
以下是需要翻译的内容:
  1. 我有一个运行着Win7系统(系统A)和一个Win7虚拟机(系统B)的电脑。
  2. 系统B通过VPN连接到内部网络,将实时数据记录到本地SQL Server数据库中。由于管理员已禁用了互联网连接,因此系统B与外部隔离。
  3. 现在系统A想要连接到这个数据库,并读取这些实时数据。

这种情况是否可能?


我们在谈论什么类型的虚拟机?(VirtualBox还是其他什么)? - Szymon Jednac
VMware Workstation 9. :) 但我可以更改虚拟机为任何可用的。 - Globalhawk
2个回答

2
我没有使用过vmware,但是如果您可以使用任何虚拟机,这里有一个VirtualBox的解决方案:
  • 在您的虚拟机上设置一个网络接口,该接口仅对主机系统可见(参考链接):

Host-only networking是VirtualBox 2.2版本新增的另一种网络模式。它可以被视为桥接和内部网络模式之间的混合体:与桥接网络类似,虚拟机可以像通过物理以太网交换机连接一样相互通信和与主机通信。然而,与内部网络一样,不需要存在物理网络接口,并且虚拟机无法与主机外的世界通信,因为它们未连接到物理网络接口。

  • 在B系统上配置端口转发([external_port] -> [host_over_vpn]:[service_port])
连接到 [通过提供的接口访问的 system_B_ip]:[外部端口],就像直接连接到数据库一样。

非常感谢。我想尝试一下这个解决方案并回到这个线程!^_^ - Globalhawk
嗨。我刚刚尝试了Host-only网络。现在B系统无法连接到VPN,因此无法获得互联网。所以我认为它不起作用。 :-( - Globalhawk
你需要一个单独的网络接口来实现这个目的(VPN 应该在内部网络接口上工作,而虚拟机主机通信则在另一个接口上)。 - Szymon Jednac
最后,我终于成功使用基于文件的数据库,例如SQLite来交换数据。谢谢大家。 - Globalhawk

0

是的,这是可能的。只需提供正确的IP地址。


谢谢您的回复。系统A和系统B现在处于不同的子网,而且系统B在一个内部网络中。我该如何设置“正确”的IP地址? - Globalhawk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接