KB2658234 - 修正:如果在 SQL Server 2008、SQL Server 2008 R2 或 SQL Server 2012 中將新文章新增至出版物,訂閱者在重新初始化後,對訂閱者進行不必要的更新

套用到
SQL Server 2008 Enterprise SQL Server 2008 Developer SQL Server 2008 Standard SQL Server 2008 Service Pack 2 SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2008 R2 Datacenter SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2008 R2 Web

Microsoft 會以一個可供下載的檔案形式發佈 Microsoft SQL Server 2008 SP2 或 Microsoft SQL Server 2012 修正程式。 由於這些修正程式是累積的,因此每個新版本都包含先前的 SQL Server 2008 SP2 或 Microsoft SQL Server 2012 修正程式版本中包含的所有 Hotfix 和所有安全性修正程式。

症狀

請考慮以下案例:

  • 您在 Microsoft SQL Server 2008、Micorosoft SQL Server 2008 R2 或 Microsoft SQL Server 2012 中設定了合併式複寫發佈環境。
  • 您在環境中有動態篩選的發行集和訂閱者,且訂閱者已與發行者同步。
  • 您在出版物中新增文章。 這會產生新的快照集和新的動態快照集。
  • 您執行複寫工作,訂閱者會再次與發行者同步。
  • 您重新初始化訂閱者。

在此案例中,當訂閱者在設定為重新初始化之後進行同步處理時,將執行所有表格的大量插入。 不過,會執行新插入資料表中所有資料列的更新。 如果文章很大,這會導致效能變慢。

注意:如果您新增訂閱者,而不是重新初始化現有訂閱者,也會發生此問題。

解決方式

累積更新資訊

SQL Server 2008 Service Pack 3

此問題的修正程式最初在 SQL Server 2008 Service Pack 3 的累積更新 7 中發行。 如需有關如何取得此累積更新套件的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:

2738350 累積更新套件 7 for SQL Server 2008 Service Pack 3 注意 由於這些組建是累積的,因此每個新發行的修正程式都包含所有 Hotfix 和先前 SQL Server 2008 Service Pack 3 修正程式版本中包含的所有安全性修正程式。 建議您考慮套用包含此 Hotfix 的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2629969 發行 SQL Server 2008 Service Pack 3 之後所發行的 SQL Server 2008 組建

SQL Server 2008 R2 Service Pack 1

此問題的修正程式最初在累積更新 8 中發行。 如需有關如何取得此 SQL Server 2008 R2 Service Pack 1 累積更新套件的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:

2723743 SQL Server 2008 R2 SP1 的累積更新套件 8 注意:由於這些組建是累積的,因此每個新發行的修正程式都包含先前的 SQL Server 2008 R2 Service Pack 1 修正程式版本中包含的所有 Hotfix 和所有安全性修正程式。 建議您考慮套用包含此 Hotfix 的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2567616 SQL Server 2008 R2 SP1 發行之後所發行的 SQL Server 2008 R2 組建

SQL Server 2012

此問題的修正程式最初在 SQL Server 2012 的累積更新 1 中發行。 如需有關此累積更新套件的詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2679368 SQL Server 2012 累積更新套件 1 注意 由於這些組建是累積的,因此每個新發行的修正程式都包含所有 Hotfix 和所有安全性修正程式,這些修正程式隨附於上一個 SQL Server 2012 修正程式版本。 Microsoft 建議您考慮套用包含此 Hotfix 的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2692828 SQL Server 2012 發行之後所發行的 SQL Server 2012 組建 您必須將 SQL Server 2012 Hotfix 套用至 SQL Server 2012 的安裝。

SQL Server 2008 Service Pack 2 的累積更新 8

此問題的修正程式最初在 SQL Server 2008 Service Pack 2 的累積更新 8 中發行。 如需有關如何取得此 SQL Server 2008 Service Pack 2 累積更新套件的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:

2648096 SQL Server 2008 Service Pack 2 的累積更新套件 8 注意:由於這些組建是累積的,因此每個新發行的修正程式都包含所有 Hotfix 和先前的 SQL Server 2008 Service Pack 2 修正程式版本中包含的所有安全性修正程式。 建議您考慮套用包含此 Hotfix 的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2402659 發行 SQL Server 2008 Service Pack 2 之後所發行的 SQL Server 2008 組建

狀態

Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。