数据中心激活协调模式又称DAC模式,应为具有两个或多个使用连续复制的节点的DAG 启用该模式。该模式用于控制 DAG 的启动数据库装入行为,在数据中心故障恢复期间,此控件可以防止数据库级别上出现网络分区故障。譬如主数据中心断电,所有副本都断开连接,这时候活动副本切换到灾备站点。当主数据中心恢复供电时(这时服务器恢复,但站点间WAN 连接尚未恢复),主数据中心的数据库会自动Mount,这时就出现了网络分区错误。
活动管理器在内存中存储一个数位(0 或 1),该数位告诉 DAG 是否允许装入服务器上以活动状态分配的本地数据库。当 DAG 正以 DAC 模式运行时,活动管理器每次启动时,该数位都被设置为 0,表示不允许装入数据库。若 DAG 处于 DAC 模式,服务器必须尝试与其知道的 DAG 的其他所有成员通信,以便获取另一个 DAG 成员,告诉它是否可以装入以活动状态分配给它的本地数据库。答案将以 DAG 中其他活动管理器的数位设置形式提供。如果另一个服务器将其数位设置为 1 进行响应,这意味着服务器允许装入数据库,这样服务器启动时将其数位设置为 1,并装入其数据库。
回到前文所述故障,灾备站点挂载活动节点之后,活动管理器的该参数就会设置为1,而主数据中心的参数为0 ,主数据中心的副本在完成与灾备站点的通信之前是不会自动挂载的,而一旦完成通信,灾备站点返回的值也会阻止主数据中心挂载数据库,因此可以避免网络分区错误。
启用DAC模式:
Set-DatabaseAvailabilityGroup-Identity DAG2 -DatacenterActivationMode DagOnly
关闭DAC模式:
Set-DatabaseAvailabilityGroup -Identity DAG2-DatacenterActivationMode Off
更多信息可参考:https://technet.microsoft.com/zh-CN/library/dd979790(v=exchg.150).aspx