Společnost Microsoft distribuuje aktualizace Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) nebo Microsoft SQL Server 2012 v jednom souboru ke stažení. Protože jsou opravy kumulativní, každá nová verze obsahuje všechny opravy hotfix a všechny aktualizace zabezpečení, které byly součástí předchozí verze systému SQL Server 2008 R2 Service Pack 1 (SP1) nebo aktualizace Microsoft SQL Server 2012 Update.
Příznaky
Zvažte následující scénář:
-
Vytvořili jste aspoň dvě publikační databázovou replikaci založenou na jedné databázi v Microsoft SQL serveru 2008 R2 nebo Microsoft SQL serveru 2012.
-
Každá publikace obsahuje alespoň jeden článek. Články se nepřekrývají a každý z nich patří jenom k jedné publikaci.
-
Vlastnost @sync_method můžete nastavit souběžně.
-
Vlastnost @immediate_sync můžete nastavit na hodnotu true.
-
Nastavte parametr MaxCmdsInTran agenta čtečky protokolů na nenulovou hodnotu.
-
Jedna ze publikací obdrží mnoho vložení v jedné transakci.
-
Po potvrzení transakce začne Agent čtečky protokolů zpracovávat a rozdělovat transakce podle parametru MaxCmdsInTran .
-
Agent snímku v jiné publikaci začne před dokončením úkolu agentem čtečky protokolů.
V tomto scénáři Agent čtečky protokolů selže a zobrazí se tato chybová zpráva:
Proces nemohl spustit ' sp_MSadd_replcmds ' na server\instance. (Zdroj: MSSQLServer, číslo chyby: 1007) Do objektu ' dbo. MSrepl_commands s jedinečným indexem ucMSrepl_commands (Zdroj: MSSQLServer, číslo chyby: 1007)
Řešení
Informace o kumulativní aktualizaci
SQL Server 2012
Oprava pro tento problém byla poprvé vydána v kumulativní aktualizaci 1 pro SQL Server 2012. Další informace o tomto kumulativním balíčku aktualizací najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
2679368 Kumulativní aktualizace 1 pro SQL Server 2012Poznámka Vzhledem k tomu, že buildy jsou kumulativní, každá nová oprava obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozího SQL serveru 2012 Oprava. Společnost Microsoft doporučuje zvážit použití nejnovější opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
2692828 Buildy SQL Server 2012, které byly vydány po vydání SQL Server 2012 Na instalaci SQL serveru 2012 musíte použít opravu hotfix systému SQL Server 2012.
Kumulativní aktualizace 4 pro SQL Server 2008 R2 SP1
Oprava pro tento problém byla poprvé vydána v kumulativní aktualizaci 4. Další informace o tom, jak získat tento kumulativní balíček aktualizací pro SQL Server 2008 R2 SP1, najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
2633146 Kumulativní aktualizace 4 pro SQL Server 2008 R2 SP1Poznámka Vzhledem k tomu, že buildy jsou kumulativní, každá nová oprava obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí verze systému SQL Server 2008 R2 s aktualizací SP1. Doporučujeme zvážit použití nejnovější opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
2567616 Buildy SQL Server 2008 R2 vydaná po vydání SQL serveru 2008 R2 SP1
Alternativní řešení
Jako alternativní řešení použijte jednu z následujících metod:
-
Nenastavujte vlastnost @sync_method publikací na "souběžné" a nenastavte vlastnost @immediate_sync publikací na hodnotu true.
-
Nastavte hodnotu parametru MaxCmdsInTran na 0.
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.