首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

合並複製發布配置全流程:發行項選擇、列篩選、行過濾與快照代理設置

     編輯:關於SqlServer

新建發布精靈關鍵步驟

1. 發布類型:合並發布

  • 支持離線/間歇連接、雙向同步、衝突檢測解決。

2. 數據庫與對象選擇

  • 勾選需同步的表/視圖/存儲過程/函數/用戶定義類型。
  • 列篩選: 取消勾選不需同步的列(LOB、大字段、內部欄位),減少快照/傳輸體積。

3. 行過濾(核心)

  1. 選中表 →「添加篩選」→ 選擇過濾列(如 CityId)。
  2. 靜態:輸入常量 CityId = 1。
  3. 參數化:輸入 CONVERT(NCHAR(10), CityId) = HOST_NAME() 或後續用 sp_changemergearticle 修正為整數轉換。
  4. 分區選項:勾選「每個分區唯一」(非重疊)。

4. 快照代理配置

  • 「立即創建快照」+ 排程(如每日 02:00)。
  • 快照文件夾:獨立高性能存儲,NTFS 權限 repl_snapshot 讀寫、sync_user 只讀。
  • 壓縮:勾選「壓縮快照文件」(減少 60-80% 體積)。
  • FTP/Internet:配置 IIS 虛擬目錄別名、認證方式(基本/Windows/匿名)。

5. 發布屬性微調

屬性推薦值說明
兼容性級別90RTM / 100RTM匹配訂閱端 SQL Server CE / Express 版本
衝突解決發布者勝出 (默認)或訂閱者勝出/自定義解決程序/合併
生成層級閾值1000 (默認)控制代數深度,大訂閱者群調大
保留期14 天過期訂閱自動清理,防元數據膨脹
允許匿名訂閱否 (生產環境)需預先授權,提高安全性

發行項屬性精細控制

  • 目標對象: 可重命名、變更架構、映射不同列名/類型(異構同步)。
  • 同步方向: 雙向 / 僅下載 / 僅上傳(如參考數據表僅下載)。
  • 衝突跟蹤: 行級 / 列級(列級減少誤衝突,開銷略大)。
  • 標識列處理: 自動範圍管理 / 手動範圍 / 不同步(視業務)。

驗證發布就緒

  1. 右鍵發布 →「查看快照代理狀態」→「啟動」→ 確認綠色成功。
  2. 快照文件夾檢查:.sch (架構)、.bcp (數據)、.idx (索引)、.pre (預計算分區)。
  3. Replication Monitor → 發布 →「代理」頁確認 Snapshot/Log Reader/Queue Reader 狀態。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved