Microsoft distribuuje Microsoft SQL Server 2008 R2 SP1 opravy ako jeden súbor na stiahnutie. Pretože opravy sú kumulatívne, každé nové vydanie obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL servera 2008 R2 SP1 opraviť uvoľnenia.
Príznaky
Zoberme si nasledujúcu situáciu:
-
Databáza riadenia údajov skladu (MDW) obsahuje tabuľku Snapshots.query_stats , ktorá obsahuje veľké množstvo údajov v Microsoft sql Server 2008 alebo Microsoft sql Server 2008 R2.
-
Spustíte nasledujúcu úlohu zhromažďovania údajov na vymazanie údajov z databázy MDW.
mdw_purge_data_ [ názov databázy<MDW>]
V tomto scenári trvá príliš dlho, kým úloha zhromažďovania údajov vymaže údaje. Poznámky
-
Úloha zhromažďovania údajov zavolá Core.sp_purge_data uložená procedúra na vymazanie údajov.
-
Ďalšie informácie o tomto probléme nájdete v téme SQL Server 2008 R2, navštívte nasledujúcu webovú lokalitu spoločnosti Microsoft:
Všeobecné informácie o tomto probléme nájdete v téme SQL Server 2008 R2
Príčina
Tento problém sa vyskytuje, pretože mdw_purge_data úloha trvá príliš dlho, kým sa v tabuľke Snapshots.query_stats obsahuje veľké množstvo údajov.
Riešenie
Informácie o balíku Service Pack
SQL Server 2008Ak chcete tento problém vyriešiť v programe SQL Server 2008, postupujte podľa týchto krokov:
-
Získajte najnovší balík Service Pack pre SQL Server 2008. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na nasledovné číslo článku:
968382 Získanie najnovšieho balíka Service Pack pre SQL Server 2008
-
V prípade existujúcej databázy MDW ju musíte aktualizovať spustením sprievodcu konfiguráciou údajového skladu po inštalácii najnovšieho balíka Service Pack pre SQL Server 2008.
SQL Server 2008 R2Ak chcete tento problém vyriešiť v SQL Server 2008 R2, postupujte podľa týchto krokov:
-
Získajte najnovší balík Service Pack pre SQL Server 2008 R2. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na nasledovné číslo článku:
2527041 Získanie najnovšieho balíka Service Pack pre SQL Server 2008 R2
-
V prípade existujúcej databázy MDW ju musíte aktualizovať spustením sprievodcu konfiguráciou údajového skladu po inštalácii najnovšieho balíka Service Pack pre SQL Server 2008 R2
-
Aktualizujte sp_purge_orphaned_notable_query_text uloženú procedúru takto:existujúci postup
-- Deleting TOP N orphaned rows in query plan table by joining info from temp table variable-- This is done to speed up delete query. DELETE TOP (@delete_batch_size) snapshots.notable_query_plan FROM snapshots.notable_query_plan AS qp , #tmp_notable_query_plan AS tmpWHERE tmp.[sql_handle] = qp.[sql_handle]
Aktualizovaný postup
-- Deleting TOP N orphaned rows in query text table by joining info from temp table-- This is done to speed up delete query. DELETE TOP (@delete_batch_size) snapshots.notable_query_text FROM snapshots.notable_query_text AS qt, #tmp_notable_query_text AS tmpWHERE tmp.[sql_handle] = qt.[sql_handle]
Poznámka: Tieto zmeny sa vyžadujú na opravu textu sp_purge_orphaned_notable_query_text uloženej procedúry, pretože príkaz DELETE nesprávne odkazuje na tabuľku snapshots.notable_query_plan po použití SQL servera 2008 R2 Service Pack 1.
Stav
Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.
Celý skript na aktualizáciu uloženej procedúry zhromažďovania údajov možno nájsť aj v nasledujúcom blogu: