SQLServer對合併複製效能的提高

2021-12-29 20:25:34 字數 1356 閱讀 4563

本文主要將由sql server為你的合併複製功能提供改善途徑。當然方法不只一種,但究其效能,最好的方法應屬盡可能地執行合併**。然而,當你的使用者不**時,你就無法執行合併**,並且你應該勸告你的使用者盡量頻繁進行同步。那麼就來看看以下的講解吧。

1、使用合適的配置檔案(profile)

關於合併複製效能,你有幾種特定的配置檔案可以用來解決特定的需求。要察看這些配置檔案,右擊你的合併**,選擇**配置(profile),然後從以下列表中選擇合適的配置檔案:

預設的**配置檔案

高容量伺服器對伺服器的配置檔案

行數和檢查總量確認配置檔案

行數確認配置檔案

緩慢鏈結**配置檔案

詳細歷史**配置檔案

windows同步管理器配置檔案

2、簡化你的過濾器

過濾器限制了發布者每次執行合併**時需要同步的資料總量。如果你使用了過濾,那麼確保你在過濾器上放置了索引,因為它們可以加強效能。

要簡化你的過濾器,你也許需要重新設計你的表。如果你在過濾器中使用了host_name引數,那麼你可以在描述中使用合併**中的hostname屬性來忽略主機名數值。確保匹配你的過濾器條件的每個欄位都經過索引,並且索引經常更新。

3、增加批處理尺寸

要盡量增加你的批處理尺寸。當declarative referential integrity (dri)發生的時候(這些錯誤是合併同步中常見的部分,並且在同步**下一次執行的時候清除),通過阻止合併**錯誤可以經常性的改善整體效能。

uploadgenerationsperbatch

downloadgenerationsperbatch

uploadreadchangesperbatch

downloadreadchangesperbatch

uploadwritechangesperbatch

downloadwritechangesperbatch

在你的合併**的屬性頁上設定這些引數。

4、經常性的重新索引合併表

經常性的重新對msmerge_contents, msmerge_tombstone, msmerge_genhistory 和 msmerge_replinfo表進行索引,改善整體複製效能。

5、限制衝突設定

限制你的合併複製衝突設定。要做到這一點,右擊你的合併複製,並選擇屬性。在subscriptions最後部分,選擇在他們重新同步之前,你所期望的subscriptions的掉線時間最小值。通常你會發現subscribers會在掉線合適的時間之後,重新同步所需要的時間比他再次傳送乙個新的快照並重新啟動的時間要長。

6、使用可選的同步夥伴

SQL Server 高可用性(七)複製

複製是乙個開發範疇的技術,但是也可以像日誌傳送一樣作為高可用技術的乙個後備選項。一 複製的拓撲 二 複製的衝突處理 在執行複製時,源資料庫與目標資料庫都是敞開式的,因此在寫入記錄時可能發生衝突。為解決衝突,常用的方法有以下兩種 1.合併複製 合併複製允許存在衝突。當衝突發生時,合併複製將比較這些記錄...

SQL Server 高可用性(七)複製

複製是乙個開發範疇的技術,但是也可以像日誌傳送一樣作為高可用技術的乙個後備選項。一 複製的拓撲 二 複製的衝突處理 在執行複製時,源資料庫與目標資料庫都是敞開式的,因此在寫入記錄時可能發生衝突。為解決衝突,常用的方法有以下兩種 1.合併複製 合併複製允許存在衝突。當衝突發生時,合併複製將比較這些記錄...

sql server複製程式設計

unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,olectrls,sqlmergxlib tlb,stdctrls,buttons type tfor...