複寫代理程式可執行許多有關複寫的工作,包含建立結構描述和資料的副本、偵測「發行者」或「訂閱者」端的更新,以及在伺服器之間傳播變更。 根據預設,復寫代理程式會在 Microsoft SQL Server Agent 作業步驟下執行。 此代理程式只不過是可執行檔,所以也可以從命令列和批次指令碼直接呼叫。 每個複寫代理程式都支援一組用於控制其執行方式的執行時期參數;這些參數在代理程式設定檔或命令列中指定。
這很重要
依預設,安裝 SQL Server 時會停用 SQL Server Agent 服務,除非明確選擇在安裝期間自動啟動該服務。
復寫代理程式檔案位於磁碟驅動器>:\Program Files\Microsoft SQL Server\120\\COM 底下<。 下表列出了複寫的可執行檔名稱和檔案名稱。 按兩下代理程式連結以檢視參數參考。
| 代理程式可執行檔 | 檔案名稱 |
|---|---|
| 複製快照代理程式 | snapshot.exe |
| 複製分發代理 | distrib.exe |
| 複寫記錄讀取器代理程式 | logread.exe |
| 複寫佇列讀取器代理程式 | qrdrsvc.exe |
| 複寫合併代理程式 | replmerg.exe |
除了復寫代理程式之外,複寫還有一些作業可進行排程和隨選維護。
執行代理程式和維護作業
SQL Server Management Studio 和復寫監視器: 啟動和停止復寫代理程式 (SQL Server Management Studio) 。
代理人檔案
設定複寫時,會在散發者上安裝一組代理程式設定檔。 代理程式設定檔包含一組參數,代理程式每次執行時都會使用這組參數:每個代理程式在啟動過程中都會登入散發者,並查詢其設定檔內的參數。 復寫會為每個代理程式提供預設配置檔,以及記錄讀取器代理程式、散發代理程式和合併代理程式的其他預先定義配置檔。 除了提供的設定檔之外,您也可以建立適合自己的應用程式需求的設定檔。 如需相關資訊,請參閱 Replication Agent Profiles。
如需直接指定命令列參數的資訊,請參閱複寫代理程式可執行檔概念。
監視複寫代理程式
「複寫監視器」允許您檢視資訊並執行與每個複寫代理程式相關聯的工作。 下列清單包含每個代理、可以在複製監視器中找到的標籤,以及說明如何存取這些標籤的主題連結:
下列代理程式與複寫監視器中的發行集相關聯:
快照代理程式
記錄讀取器代理程式
佇列讀取器代理程式
透過 [ 代理 程式] 索引標籤取與這些代理程式相關聯的資訊和工作。如需詳細資訊,請參閱 使用複寫監視器檢視資訊和執行工作。
下列代理程式在複寫監視器中與訂閱相關聯:
分發代理人
合併代理程式
透過下列標籤,可以存取與這些代理建立關聯的資訊和任務:{訂閱監看清單} (適用於每個出版者)或 {所有訂閱} 標籤(適用於每種出版物)。 如需詳細資訊,請參閱使用複寫監視器來檢視資訊及執行工作。
獨立和共用代理
獨立代理人是服務某一個訂閱帳戶的代理人。 共用代理程式服務多個訂用帳戶;如果使用相同共用代理程式的多個訂用帳戶需要同步處理,則預設會在佇列中等候,而共用代理程式會一次服務一個訂閱。 使用獨立代理程式會降低延遲,因為代理程式會在訂閱需要同步時就緒。 合併式複寫一律會使用獨立代理程式,而事務複製預設會針對在 [新增發行集精靈] 中建立的發行集使用獨立代理程式(在舊版 SQL Server 中,預設使用共用代理程式的事務複製)。
複寫維護任務
複寫使用下列作業執行依排程和視需要的維護。
| 清除作業 | 說明 | 默認排程 |
|---|---|---|
| 代理歷史資料清除:發佈 | 從散發資料庫移除複寫代理程式歷程記錄。 | 每十分鐘執行一次 |
| 分發清理:分發 | 從分發資料庫移除重複的交易。 未在最大分配保留期限內同步的訂用帳戶將被停用。 | 每十分鐘執行一次 |
| 已過期的訂用帳戶清除 | 偵測並移除發行集資料庫的過期訂閱。 | 每天凌晨 1:00 執行 |
| 重新初始化具有數據驗證失敗的訂用帳戶 | 偵測所有發生數據驗證失敗的訂用帳戶,並將其標示為重新初始化。 下次執行合併代理程式或散發代理程式時,將會在訂閱者端套用新的快照。 | 沒有預設排程(預設未啟用)。 |
| 同步代理檢查 | 偵測未主動記錄記錄的復寫代理程式。 如果作業步驟失敗,它會寫入Microsoft Windows 事件記錄檔。 | 每十分鐘執行一次。 |
| 發佈端資料同步監控更新工具 | 重新整理複寫監視器使用的緩存查詢。 | 持續運行。 |