[AlwaysOn] 建立SQL Server高可用性組T-SQL語法:FAILURE_CONDITION_LEVEL引數

cow977發表於2019-08-12

FAILURE_CONDITION_LEVEL = { 1 | 2 | 3 | 4 | 5 }

指定觸發此可用性組的自動故障轉移的故障條件。Specifies what failure conditions trigger an automatic failover for this availability group. 引數 FAILURE_CONDITION_LEVEL在組級別設定,但僅與為同步提交的可用性模式(AVAILABILITY_MODE = SYNCHRONOUS_COMMIT)配置的可用性副本相關。FAILURE_CONDITION_LEVEL is set at the group level but is relevant only on availability replicas that are configured for synchronous-commit availability mode (AVAILABILITY_MODE = SYNCHRONOUS_COMMIT). 此外,只有將主副本和輔助副本都配置為自動故障轉移模式(FAILOVER_MODE = AUTOMATIC),並且輔助副本當前與主副本同步時,故障條件才能觸發自動故障轉移。Furthermore, failure conditions can trigger an automatic failover only if both the primary and secondary replicas are configured for automatic failover mode (FAILOVER_MODE = AUTOMATIC) and the secondary replica is currently synchronized with the primary replica.

失效條件等級(1-5)的範圍從限制性最低的1級到限制性最強的5級。The failure-condition levels (1-5) range from the least restrictive, level 1, to the most restrictive, level 5. 給定的條件級別包含所有限制性較小的級別。A given condition level encompasses all the less restrictive levels. 因此,最嚴格的條件級別5包括四個限制性較小的條件級別(1-4),級別4包括級別1-3,等等。Thus, the strictest condition level, 5, includes the four less restrictive condition levels (1-4), level 4 includes levels 1-3, and so forth. 下表描述了對應於每個級別的故障條件。The following table describes the failure-condition that corresponds to each level.

級別 Level

  失效條件 Failure Condition

1

指定在發生以下任一情況時應啟動自動故障轉移: Specifies that an   automatic failover should be initiated when any of the following occurs:

- SQL Server 服務已關閉 The SQL Server service   is down.

- 用於連線到WSFC群集的可用性組的租約將過期,因為沒有從伺服器例項收到ACK。 The lease of the availability group for connecting to the WSFC cluster expires   because no ACK is received from the server instance. 有關詳細資訊,請參閱它的工作原理:SQL   Server總是處於租用超時狀態。 For more information, see How It Works: SQL   Server Always On Lease Timeout.

2

指定在發生以下任一情況時應啟動自動故障轉移: Specifies that an   automatic failover should be initiated when any of the following occurs:

- SQL Server 例項未連線到群集,並且超出了可用性組的使用者指定的健康檢查超時閾值。 The instance of SQL   Server does not connect to cluster, and the user-specified   HEALTH_CHECK_TIMEOUT threshold of the availability group is exceeded.

- 可用性副本處於失敗狀態。 The availability replica is in failed state.

3

指定應在關鍵的SQL Server內部錯誤(如孤立的spinlocks、嚴重的寫訪問衝突或轉儲過多)上啟動自動故障轉移。 Specifies that an automatic failover should be initiated on critical SQL   Server internal errors, such as orphaned spinlocks, serious write-access   violations, or too much dumping.

This is the default   behavior.

4

指定應在中度SQL Server內部錯誤(如SQL Server內部資源池中的永久性記憶體不足)時啟動自動故障轉移。 Specifies that an automatic failover should be initiated on moderate SQL   Server internal errors, such as a persistent out-of-memory condition in the   SQL Server internal resource pool.

5

指定應在任何限定的故障條件下啟動自動故障轉移,包括: Specifies that an   automatic failover should be initiated on any qualified failure conditions,   including:

- SQL 引擎工作執行緒耗盡。 Exhaustion of SQL   Engine worker-threads.

- 檢測到無法解決的死鎖。 Detection of an unsolvable deadlock.

註釋 Note

SQL Server 例項對客戶端請求的響應不足與可用性組無關。Lack of response by an instance of SQL Server to client requests is not relevant to availability groups.

故障條件級別( FAILURE_CONDITION_LEVEL)和執行狀況檢查超時) HEALTH_CHECK_TIMEOUT)值,為給定組定義靈活的故障轉移策略。The FAILURE_CONDITION_LEVEL and HEALTH_CHECK_TIMEOUT values, define a flexible failover policy for a given group. 這種靈活的故障轉移策略為您提供了對哪些條件必須導致自動故障轉移的精細控制。This flexible failover policy provides you with granular control over what conditions must cause an automatic failover. 有關詳細資訊,請參閱針對可用性組(SQL Server)的自動故障轉移的靈活故障轉移策略。For more information, see .


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/81227/viewspace-2653354/,如需轉載,請註明出處,否則將追究法律責任。

相關文章