1

我有两个运行 SQL Server 标准 2012 的 Windows Server 2012 数据中心 R2 虚拟机。我在每个虚拟机上都安装了我的应用程序和数据库服务器。两个虚拟机都驻留在同一个云服务中。

我还通过端口:80 在两个虚拟机之间设置负载平衡。现在是镜像数据库的问题。我尝试设置 SQL 镜像,但到目前为止没有运气。我不确定这两个虚拟机如何通过同一个端口 5022 相互通信。

我也做了一些阅读,但我仍然不确定这样做的可能方法是什么。我现在肯定需要帮助。

问题: a) 我是否需要设置虚拟网络才能镜像数据库?b) 我可以镜像数据库驻留在同一个虚拟网络中吗?c)如果我的上述假设不正确,那么最好的方法是什么?

提前致谢!!

更新:我设法在 VM1 中设置了 Principle 服务器,在 VM2 中设置了 Mirror & Witness 服务器(如果您有资源,最好将它们放在单独的 VM 中)。两个虚拟机都驻留在同一个虚拟网络和同一个云服务中。

所以当 Principle 不可用时,Witness 会自动将 Mirror 设置为 Principle,不再处于恢复状态。

如果您计划在同一服务器中同时拥有见证和镜像 SQL 实例,请确保为见证服务器使用不同的端口。例如。

- Principle : 5022
- Mirror    : 5022
- Witness   : 5023
4

2 回答 2

2

它们可以在同一个云服务中,并将它们放在同一个 CS 中将使生活更简单,因为不需要处理公共端点。事实上,云服务只是一个虚拟机和/或角色的容器,它也与隐式创建的网络相关联(因此您需要一个端点才能从外部访问它)。

还建议将 VM 放入同一个可用性集中,在这种情况下,Azure 将尝试不要同时关闭所有 VM。

设置 DBM 的最简单方法是使用证书。您可以在此处查看示例。

注意:如果您需要自动故障转移,请不要忘记设置见证。

于 2014-05-23T17:12:10.870 回答
1

为了让两个 Azure VM 进行通信,它们需要设置在同一个关联组中。

虚拟网络是一个专门的关联组,您可以在其中控制 IP。

设置虚拟网络后,为数据库设置复制应该没有问题。

于 2014-05-23T16:35:31.530 回答