Príznaky
Predpokladajme, že používate funkciu skupiny dostupnosti AlwaysOn v Microsoft SQL Server 2012, 2014 alebo 2016. Vždy, keď spustíte dotaz voči sekundárnej databáze, dotaz sa prekompiluje. Tento problém sa vyskytuje, pretože štatistiky nie sú správne vypestované z primárneho servera na sekundárny server. Ak spustíte Profiler sledovania, nájdete niečo podobné s nasledujúcim o statín , čo znamená, že SQL Server je dotazovanie štatistiky:SELECT StatMan([SC0], [SB0000]) FROM (SELECT TOP 100 PERCENT [SC0], step_direction([SC0]) over (order by NULL) AS [SB0000] FROM (SELECT [xxx] AS [SC0] FROM [dbo].[xxx] TABLESAMPLE SYSTEM (7.033584e-001 PERCENT) WITH (READUNCOMMITTED) ) AS _MS_UPDSTATS_TBL_HELPER ORDER BY [SC0], [SB0000] ) AS _MS_UPDSTATS_TBL OPTION (MAXDOP 1) Poznámka: Ak vypnete možnosť Automatická aktualizácia štatistík alebo ak chcete zapnúť možnosť automaticky aktualizovať štatistiku asynchrónne , tento problém sa nevyskytuje.
Riešenie
Tento problém bol najskôr vyriešený v nasledujúcej kumulatívnej aktualizácii SQL servera:
Každá nová Kumulatívna aktualizácia pre SQL Server obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej kumulatívnej aktualizácie. Odporúčame, aby ste si stiahli a nainštalovali najnovšie kumulatívne aktualizácie pre SQL Server:
Odkazy
Oboznámte sa s terminológiou , ktorú spoločnosť Microsoft používa na popis aktualizácií softvéru.