SQL Server Availability Group Job Design Guide


  1. 說明
  2. 相關連結

筆記 SQL Server 使用 Availability Group 可用性群組在設計 Agent Job 上的設計要點,主要是考量 Job 執行上主要複本與次要複本的執行差異。

SQL Server Logo

說明

因為可用性群組下的可用性複本分為主要與次要,主要複本支援讀寫、次要複本僅支援讀取。所以在設計 Job 的時候,如果有對資料庫寫入的情境,需要考量是否為主要複本。可以使用 sys.fn_hadr_is_primary_replica 函數來達成。

因此不論是主要複本或者次要複本都會建立相同的 Job,並且排程執行 Job。只是 Job 本身會判斷本身的資料庫是否為主要複本,來真正執行 Job 所要達成的工作。

IF sys.fn_hadr_is_primary_replica('DatabaseName') = 1
	EXEC DatabaseName.dbo.usp_UpdateTable
ELSE
	SELECT '不是主要執行複本,不執行任何寫入異動'

相關連結

SQL Server Availability Group 資料庫備份注意事項

SQL Server Always On Availability Group 可用性群組安裝筆記

SQL Server High Availability 高可用性架構解決方案

Availability Group How to Reset Replica 可用性群組 資料庫複本重新設置