KB2535705 – OPRAVA: K narušení přístupu dojde, když obnovíte databázi a současně spustíte sp_replcounters uloženou proceduru na serveru se systémem SQL Server 2008 nebo SQL Server 2008 R2

Platí pro
SQL Server 2008 SQL Server 2008 R2

Microsoft distribuuje opravy systému Microsoft SQL Server 2008 Microsoft SQL Server 2008 R2 jako jeden soubor ke stažení. Vzhledem k tomu, že opravy jsou kumulativní, obsahuje každá nová verze všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozího vydání opravy pro SQL Server 2008 pro SQL Server 2008 R2.

Příznaky

Vezměte v úvahu následující scénář:

  • Máte jeden server, na kterém běží replikace v prostředí Microsoft SQL Server 2008 nebo Microsoft SQL Server 2008 R2.
  • Máte druhý server se systémem Microsoft SQL Server 2008 nebo Microsoft SQL Server 2008 R2 a replikace je zakázaná nebo není nainstalovaná.
  • Obnovíte replikovanou databázi prvního serveru na druhém serveru.
  • Během procesu obnovení databáze uživatel nebo aplikace spustí uloženou proceduru sp_replcounters na druhém serveru.

V tomto scénáři může dojít k narušení přístupu na druhém serveru. Kromě toho se ve složce protokolu serveru SQL Server vytvoří soubor výpisu zásobníku. Když dojde k tomuto problému, může být nutné restartovat druhý server.

Příčina

K tomuto problému dochází, protože uložená procedura sp_replcounters běží na serveru, na kterém je zakázaná nebo není nainstalovaná replikace. Když se sp_replcounters pokusí o přístup k mezipaměti článků, operace obnovení databáze už clear_db_repl_cache volala, aby se databáze odebrala z mezipaměti článku, než se databáze přidá zpět do mezipaměti článků.

Řešení

Informace o kumulativní aktualizaci

SQL Server 2008 R2

Oprava tohoto problému byla poprvé vydána v kumulativní aktualizaci 9. Další informace o získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 R2 naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2567713 Balíček kumulativní aktualizace 9 pro SQL Server 2008 R2 Poznámka: Buildy jsou kumulativní, a proto každá nová verze opravy obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozího vydání opravy pro SQL Server 2008 R2. Doporučujeme zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

981356 Buildy SQL Server 2008 R2, které byly vydány po vydání verze SQL Server 2008 R2

SQL Server 2008 R2 Service Pack 1

Oprava tohoto problému byla poprvé vydána v kumulativní aktualizaci 2 pro SQL Server 2008 R2 Service Pack 1. Další informace o získání tohoto balíčku kumulativní aktualizace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2567714 Balíček kumulativní aktualizace 2 pro SQL Server 2008 R2 Service Pack 1Poznámka: Vzhledem k tomu, že buildy jsou kumulativní, obsahuje každá nová verze opravy všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí verze opravy SQL Server 2008 R2. Doporučujeme zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2567616 Buildy SQL Server 2008 R2, které byly vydány po vydání aktualizace Service Pack 1 SQL Server 2008 R2

SQL Server 2008

Oprava tohoto problému byla poprvé vydána v kumulativní aktualizaci 4. Další informace o získání tohoto balíčku kumulativních aktualizací pro SQL Server 2008 naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2527180 Balíček kumulativní aktualizace 4 pro SQL Server 2008 Service Pack 2Poznámka Vzhledem k tomu, že buildy jsou kumulativní, obsahuje každá nová verze opravy všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí verze opravy pro SQL Server 2008. Doporučujeme zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

956909 Buildy SQL Server 2008, které byly vydány po vydání SQL Server 2008

Stav

Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.

Další informace

Další informace o měněných souborech a o všech předpokladech použití balíčku kumulativní aktualizace obsahujícího opravu hotfix popsaného v tomto článku znalostní báze znalostní báze Microsoft Knowledge Base naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2527180 Balíček kumulativní aktualizace 4 pro SQL Server 2008 Service Pack 2

Reference

Další informace o statistice replikace naleznete na následujícím webu MSDN (web MSDN (Microsoft Developer Network)):

sp_replcounters (Transact-SQL) Další informace o seznamu buildů, které jsou dostupné po vydání verze systému SQL Server 2008, naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

956909 Buildy SQL Server 2008 vydané po vydání SQL Server 2008Další informace o modelu přírůstkové údržby pro SQL Server naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

935897 Od týmu SQL Server je k dispozici model přírůstkové údržby k poskytování oprav hotfix pro hlášené problémyDalší informace o schématu pojmenování aktualizací pro SQL Server naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

822499 Nové schéma pojmenování balíčků aktualizací softwaru Microsoft SQL Server Další informace o terminologii aktualizací softwaru naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

824684 Popis standardní terminologie používané k popisu aktualizací softwaru společnosti Microsoft