徵狀
假設您有一個分散式可用性群組(DAG),在 Microsoft SQL Server 2016 和2017中有多個資料庫(>15)。 有時候,連線超時會在 SQL Server 的全域主要和 DAG 轉寄站實例之間發生。 重建連接之後,資料庫的資料移動不會自動繼續。 此外,您可能會注意到下列事項:
-
資料庫複本是 NOT_HEALTY 並 NOT_SYNCHRONIZING 狀態。
-
DAG 轉寄站上的 last_commit_time 會與連接逾時時間相符。
您可能也會看到下列錯誤訊息記錄在主要可用性群組的主要複本主機的錯誤記錄中:
DateTime spid329s 先前建立的連線至可用性複本 "ReplicaName" (id 為 [ReplicaID])時發生連接逾時。 網路或防火牆問題存在,或可用性複本已轉換成解析角色。
DateTime Spid1538s Alwayson 在可用性群組連線時,在可用性複本 "ReplicaName" 上,使用 [複本識別碼: {ReplicaID}] 來終止主要資料庫"DatabaseName" 。 這只是一則資訊訊息。 不需要使用者動作。
-
如果 [分散式可用性] 群組中的所有資料庫都不是,則會報告此情況。
狀態
Microsoft 已確認<適用於>一節所列的 Microsoft 產品確實有上述問題。
解決方案
此問題已在 SQL Server 的下列累積更新中修正:
關於 SQL Server 的累積更新:
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
參考
瞭解 terminologyMicrosoft 用來描述軟體更新的術語。