16.5 故障转移

16.5  故障转移


16.5.1  故障转移模式

  在新建可用性组时,默认不选择“自动故障转移”和“同步提交”,可以根据实际业务的需求指定“自动故障转移”(最多可指定2个副本)和“同步提交”(最多可指定3个副本)。

wKioL1V77YmiYe7AAAKlQ_IZyGc532.jpg


  与数据库镜像的可用性模式类似,AlwaysOn 可用性组可以有以下3种高可用模式可供选择。

(1)自动故障转移和同步提交。选择了“自动故障转移”,则系统将自动同时选择“同步提交”。此副本将使用同步提交可用性模式,同时支持自动故障转移和手动故障转移,不会丢失数据。

(2)手动故障转移和同步提交。即仅选择“同步提交”。此副本将使用同步提交可用性模式,仅支持手动故障转移,不会丢失数据。

(3)手动故障转移和异步提交。即“自动故障转移”和“同步提交”都不选择。此副本将使用异步提交可用性模式,且只支持强制故障转移(可能丢失数据)。 


  在可用性组的“属性”中,也可以编辑“可用性模式”和“故障转移模式”。如果“故障转移模式”设置为“自动”,但“可用性模式”不会自动设置为“同步提交”,需要手动确认。

wKioL1V79I3Sc0Z2AAL3AgnVtpk390.jpg


  对于同步提交的辅助副本,其同步状态将显示为“已同步”,对于异步提交的辅助副本,其同步状态则显示为“正在同步”。

wKiom1V7-u-g8uE0AAUKsvo5lFo139.jpg



16.5.2  自动故障转移

  检测到主副本发生故障后,故障转移群集服务将自动转移到“故障转移模式”为“自动”的辅助副本。



16.5.3  手动故障转移

  在 SSMS 中选择一个可用性组,然后在右键菜单中选择“故障转移”。在“显示面板”中也有“启动故障转移向导”的链接。

wKioL1V79tngltgpAATYAoGNqWE379.jpg


wKiom1V79S_gr1AyAAH-4cGMEHE620.jpg


wKioL1V79trxu0LNAAId2b9uQSs484.jpg


wKiom1V79TCAAGBzAAGBPuDHoUs253.jpg


wKioL1V79tugZ6SJAAGVnwkCC6E328.jpg


wKiom1V79THhD_RkAAH2VRq8nLI687.jpg


wKioL1V798_BqFp0AAHhGW7B9fU701.jpg


  上述操作,脚本为:

--- YOU MUST EXECUTE THE FOLLOWING SCRIPT IN SQLCMD MODE.

:Connect SQLSVR2

ALTER AVAILABILITY GROUP [HAGroup01] FAILOVER;

GO



16.5.4  强制转移

  遇到主副本发生故障,而自动故障转移又不能成功时,可能需要强制将某个辅助副本提升为主副本。

  需要在辅助副本上执行以下脚本。这个操作可能会造成数据丢失,请谨慎使用。

ALTER AVAILABILITY GROUP [HAGroup01] FORCE_FAILOVER_ALLOW_DATA_LOSS;


  强制切换之后,新的主副本上数据库显示为“已同步”,其他辅助副本上数据库则显示为“未同步”。

wKioL1V7-PGRU7h8AAS-G0Qcm-U473.jpg


  强制转移后,当辅助副本重新联机后,可以分别在辅助副本上运行以下脚本,同步数据更新。

ALTER DATABASE [SQLDB01] SET HADR RESUME;

ALTER DATABASE [SQLDB02] SET HADR RESUME;


  上述脚本执行成功后,辅助副本上的数据库状态将显示为“已同步”(同步提交模式)或“正在同步”(异步提交模式)。



本文出自 “SQL Server 管理员指南” 博客,谢绝转载!

你可能感兴趣的:(群集,可用性组)