Sql-Server

事務複製失敗處理

  • October 10, 2018

Web 應用程序是高中記錄管理系統 (HSRMS)。該應用程序的使用者是

  1. 高中管理(普通使用者)
  2. 數據驗證使用者(管理員)

使用者組 2 將允許使用者組 1 定期送出數據,然後使用者組 2 將對其進行驗證並要求更正。希望系統流程很清晰。


複製計劃(建議)

我已將建議的事務複製設置為

  • 發布者(伺服器 A)
  • 分銷商(伺服器 B)
  • 訂戶(伺服器,即 C、D、E 等)。

注意:所有伺服器將位於同一區域/位置。

我的理解是發布者應該是應該連接到 HSRMS 應用程序的數據庫伺服器,分發者包含事務(更新)並負責轉發給訂閱者,但我需要在任何代理上記錄伺服器狀態如果伺服器發生故障(由於任何原因),應通知系統管理員更新他們的數據庫伺服器地址,並且訂閱者必須同時響應。

  1. 我的方法和理解是否正確,或者我需要深入研究它?
  2. 是否有任何機制讓應用程序伺服器了解故障並採取相應措施?
  3. 任何數據庫伺服器發生故障時的動態伺服器連接?即伺服器連接應該自動映射到活動執行的數據庫伺服器而不是系統管理員?
  4. 如果應用程序只是連接到伺服器 A 即發布以進行更新,那麼訂閱者的角色可能是什麼?那裡的訂閱者是否僅用於數據庫備份並且不會與 Web 應用程序互動?
  1. 是的,你的理解是正確的。通常,Publisher 和 Distributor 是相同的伺服器。
  2. 是的,有一些自動創建的作業會在複製停止時通知您。創建複製後,檢查您的 SQL Server 代理並查看新作業。您可以更改計劃和通知屬性。但是您可以創建自己的作業,在兩個實例中檢查一些最新記錄(如果它們已將伺服器相互連結)。
  3. 我認為您必須通過應用程序進行設置。
  4. 訂閱者可以獲得查詢和讀取操作,這將使您的發布者俱有更少的 I/O 並且往往更快。更新將起作用,因此您必須對其進行處理,以便使用者知道它可能不會持續存在。

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