Sql-Server

當輔助伺服器上的電源故障導致輔助失去 tlog 記錄時,非同步 AG 輔助如何與主同步?

  • July 21, 2022

在不需要 WSFC 集群的 SQL AG(讀取規模)非同步模式下,假設以下場景:

  1. Primary 將數據寫入其事務日誌,並將此日誌記錄發送到 Secondary
  2. 假設在上述日誌記錄到達輔助節點之前,輔助節點已斷電

當輔助啟動時,它如何將其數據庫與主同步?這是自動還是手動過程?

當輔助啟動時,它如何將其數據庫與主同步?

我在這裡進行粗略的介紹,因為細節並不重要,但是,整個過程是理解的重點。如果您想了解其內部工作原理,可以使用 XE 和各種其他方法來推斷深層內部結構。

當輔助節點啟動並連接到主節點時,它將交換一些基本資訊。其中一項是次要與將與主要協商的日誌有關的位置。然後可能會出現各種選項,例如:

  1. 次要超過主要並且需要撤消回到公共點。
  2. 輔助節點與主節點位於同一位置,並且將發送任何新日誌。
  3. 次要在主要之後。這有不同的子選項,例如對於公共點來說太落後並且需要匯總到公共分叉,或者存在公共分叉,輔助節點可以讓日誌流從公共分叉開始並繼續直到趕上.

其中大部分是自動的,唯一不是的部分是如果沒有用於主要和次要的公共分叉,並且需要進行手動干預。這將導致錯誤指出數據庫太落後,這是不言自明的。

引用自:https://dba.stackexchange.com/questions/314692