Active SQL复制和Azure SQL DB的自动故障转移组之间的主要区别是什么

问题描述

我想知道Azure SQL DB中的Active Geo复制组和自动故障转移组之间的区别是什么?我了解到,在“自动故障转移”组中,辅助数据库始终在辅助区域上创建,但是在同一区域之间也可能发生活动的地理复制。那么,什么时候应该使用另一种呢?

解决方法

Active Geo复制组和自动故障转移组之间没有什么区别。

  1. Azure SQL托管实例不支持活动地理复制,但支持自动故障转移组。

  2. 活动的地理复制通过流式数据库事务日志复制更改。它与事务复制无关,后者通过执行DML(INSERT,UPDATE,DELETE)命令来复制更改。主动式地理复制似乎更加轻巧和高效。

Active-geo-replication document

Auto-failover-group document

,

根据 MSFT documentation - 自动故障转移组“是现有活动异地复制功能之上的声明性抽象,旨在简化大规模异地复制数据库的部署和管理 em>”。 BCDR 是最大的用例 - SQL 数据手动或自动故障转移到另一个区域。

自动故障转移组功能在增加便利性的同时施加了一些限制 -

  1. 侦听器概念使您的应用能够利用 SQL 的相同端点,而通过异地复制,您的应用负责连接字符串操作以定位所需的 SQL 实例
  2. 另一方面,异地复制支持包含在同一区域内的多个 RO 目标,而故障转移组仅支持不同区域的两个 SQL 实例,其中一个是 RW,另一个是 RO
  3. 正如另一个答案中有效指出的那样,SQL 托管实例仅支持通过 vNet 对等互连的故障转移组

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...