Spoločnosť Microsoft distribuuje Microsoft SQL Server 2008 R2, SQL Server 2008 R2 SP1 a SQL Server 2008 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 zahrnuté do predchádzajúceho SQL servera 2008 R2, SQL Server 2008 R2 SP1 a SQL Server 2008 opraviť uvoľnenia.
Úvod
Príkaz DBCC CHECKDB vyváži potrebu medzi výkonom a zdrojmi. Preto príkaz DBCC CHECKDB v predvolenom nastavení nemusí maximalizovať používanie zdrojov pri spustení kontroly konzistencie pre databázu. Príkaz DBCC CHECKDB napríklad nemusí maximalizovať používanie vstupno-výstupných diskov pri kontrole konzistencie pre databázu.
Riešenie
Kumulatívna aktualizácia informácií
SQL Server 2008 Service Pack 2
Oprava tohto problému bola prvýkrát vydaná v kumulatívnej aktualizácii 9 pre SQL Server 2008 Service Pack 2. Ďalšie informácie o tomto balíku kumulatívnych aktualizácií nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na nasledovné číslo článku:
2673382 Kumulatívna aktualizácia balíka 9 pre SQL Server 2008 Service Pack 2
Poznámka: Pretože zostavy sú kumulatívne, každé nové vydanie opraviť obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL servera 2008 opraviť uvoľnenia. Odporúčame, aby ste zvážili uplatnenie najnovších opráv, ktoré túto rýchlu opravu obsahujú. Ďalšie informácie získate v nasledujúcom článku databázy Microsoft Knowledge Base:
2402659 Zostavy SQL servera 2008, ktoré boli vydané po vydaní SQL servera 2008 Service Pack 2
Microsoft SQL Server 2008 rýchlych opráv sú vytvorené pre konkrétne SQL Server Service Pack. Ak chcete nainštalovať SQL Server 2008 Service Pack 2, musíte použiť rýchlu opravu SQL servera 2008 Service Pack 2. Na základe predvoleného nastavenia je každá rýchla oprava, ktorá je k dispozícii v balíku SQL Server Service Pack, zahrnutá v ďalšej službe SQL Server Service Pack.
SQL Server 2008 Service Pack 3
Oprava tohto problému bola prvýkrát vydaná v kumulatívnej aktualizácii 4 pre SQL Server 2008 Service Pack 3. Ďalšie informácie o tomto balíku kumulatívnych aktualizácií nájdete v nasledujúcom článku databázy Microsoft Knowledge Base:
2673383 Kumulatívna aktualizácia balíka 4 pre SQL Server 2008 Service Pack 3
Poznámka: Pretože zostavy sú kumulatívne, každé nové vydanie opraviť obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL servera 2008 opraviť uvoľnenia. Spoločnosť Microsoft odporúča, aby ste zvážili uplatnenie najnovších opráv, ktoré túto rýchlu opravu obsahujú. Ďalšie informácie získate v nasledujúcom článku databázy Microsoft Knowledge Base:
2629969 Zostavy SQL servera 2008, ktoré boli vydané po vydaní SQL servera 2008 Service Pack 3
Microsoft SQL Server 2008 rýchlych opráv sú vytvorené pre konkrétne SQL Server Service Pack. Ak chcete nainštalovať SQL Server 2008 Service Pack 3, musíte použiť rýchlu opravu SQL servera 2008 Service Pack 3. Na základe predvoleného nastavenia je každá rýchla oprava, ktorá je k dispozícii v balíku SQL Server Service Pack, zahrnutá v ďalšej službe SQL Server Service Pack.
Kumulatívna aktualizácia balíka 11 pre SQL Server 2008 R2
Oprava tohto problému bola prvýkrát vydaná v kumulatívnej aktualizácii 11. Ďalšie informácie o možnostiach získania tohto balíka kumulatívnych aktualizácií pre SQL Server 2008 R2 nájdete v nasledujúcom článku databázy Microsoft Knowledge Base:
2633145 Kumulatívna aktualizácia balíka 11 pre SQL Server 2008 R2
Poznámka: Pretože zostavy sú kumulatívne, každé nové vydanie opraviť 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 opraviť uvoľnenia. Odporúčame, aby ste zvážili uplatnenie najnovších opráv, ktoré túto rýchlu opravu obsahujú. Ďalšie informácie získate v nasledujúcom článku databázy Microsoft Knowledge Base:
981356 Zostavy SQL servera 2008 R2, ktoré boli vydané po vydaní SQL servera 2008 R2
Kumulatívna aktualizácia balíka 4 pre SQL Server 2008 R2 SP1
Oprava tohto problému bola prvýkrát vydaná v kumulatívnej aktualizácii 4. Ďalšie informácie o možnostiach získania tohto balíka kumulatívnych aktualizácií pre SQL Server 2008 R2 SP1 nájdete v nasledujúcom článku databázy Microsoft Knowledge Base:
2633146 Kumulatívna aktualizácia balíka 4 pre SQL Server 2008 R2 SP1
Poznámka: Pretože zostavy sú kumulatívne, každé nové vydanie opraviť 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. Odporúčame, aby ste zvážili uplatnenie najnovších opráv, ktoré túto rýchlu opravu obsahujú. Ďalšie informácie získate v nasledujúcom článku databázy Microsoft Knowledge Base:
2567616 Zostavy SQL servera 2008 R2, ktoré boli vydané po vydaní SQL servera 2008 R2 SP1
SQL Server 2012
SQL Server 2012 obsahuje zmeny kódu pri týchto opravách. Príznak sledovania 2562 a 2549, ako je popísané nižšie, sa vzťahuje aj na SQL Server 2012. Oprava na zmenšenie tvrdení o DBCC_MULTIOBJECT_SCANNER závora však nevyžaduje príznak sledovania 2562 v SQL Server 2012. Tieto zmeny boli predvolene zahrnuté v programe SQL Server 2012.
Ďalšie informácie
Táto Kumulatívna aktualizácia prináša dve príznaky sledovania, aby sa lepšie maximalizoval využitie zdrojov disku I/O, keď používateľ spustí príkaz DBCC CHECKDB . Hoci tieto vylepšenia sa zameriavajú iba na možnosť PHYSICAL_ONLY , môžu tiež zlepšiť celkový výkon príkazov DBCC CHECKDB , ktoré nepoužívajú možnosť PHYSICAL_ONLY . Príznak sledovania 2562 Tento príznak sledovania obsahuje nasledovné zmeny:
-
Spustite príkaz DBCC CHECKDB v jednej dávke bez ohľadu na počet indexov v databáze. Na základe predvoleného nastavenia sa príkaz DBCC CHECKDB pokúsi minimalizovať tempdb zdroje obmedzením počtu indexov alebo "faktov", ktoré generuje pomocou konceptu dávky. Tento príznak sledovania vynúti všetky spracovanie na jednu šaržu.
-
Zlepšenie interného spracovania na určenie stránok, ktoré sa majú prečítať z databázy. Tým sa zmenšuje tvrdenie na DBCC_MULTIOBJECT_SCANNERzávora.
Jedným z efektov používania tohto príznaku sledovania je to, že požiadavky na priestor pre tempdbsa môžu zvýšiť. Tempdb môže rásť až do 5 percent alebo viac používateľskej databázy, ktorá je spracovaná príkazom DBCC CHECKDB . Preto odporúčame, aby ste pred veľkosťou tempdb aspoň 5% veľkosti databázy, keď použijete tento príznak sledovania, aby sa predišlo automatickému rastu, čo môže spomaliť výkon príkazu DBCC CHECKDB . Poznámka: Príznak sledovania 2562 je príznak sledovania na úrovni relácie. Môžete ho povoliť na úrovni relácií. Príznak sledovania 2549 Príkaz DBCC CHECKDB vybuduje interný zoznam stránok, ktoré sa majú čítať za jedinečnú diskovú jednotku vo všetkých databázových súboroch. Táto logika určuje jedinečné disky na základe písmena jednotky fyzického názvu súboru každého súboru. Ak sú základné disky skutočne jedinečné, keď sa písmená jednotky alebo nie, príkaz DBCC CHECKDB bude považovať za jeden disk. Pri zapnutí tohto príznaku sledovania sa predpokladá, že každý databázový súbor je na jedinečnej diskovej jednotke. Nepoužívajte tento príznak sledovania, pokiaľ neviete, že každý súbor je založený na jedinečnom fyzickom disku. Poznámka: Príznak sledovania 2549 je globálny príznak sledovania. Ak ju chcete povoliť, musíte ju použiť ako parameter pri spustení alebo použiť DBCC TRACEON (2549;-1). Hoci tieto príznaky sledovania zvyšujú výkonnosť príkazov DBCC CHECKDB , ktoré sa zameriavajú na používanie možnosti DBCC CHECKDB , niektorí používatelia nemusia vidieť žiadne zlepšenie výkonu. Hoci tieto príznaky sledovania zlepšujú používanie prostriedkov vstupno-výstupných zdrojov disku, základný výkon prostriedkov disku môže obmedziť celkový výkon príkazu DBCC CHECKDB . Majte na pamäti tieto obmedzenia:
-
Zlepšenie výkonu nie je navrhnuté na zlepšenie výkonu pri použití možnosti opravy. Vylepšenia výkonu však nie sú navrhnuté na zlepšenie výkonu pri použití možnosti repair_allow_data_loss.
-
Vylepšenia nemajú vplyv na príkaz DBCC CHECKALLOC.
-
Vylepšenia môžu pomôcť výkonu príkazu DBCC CHECKTABLEpre indexy s mnohými stranami. Vylepšenia však nie sú zacielené na zlepšenie výkonu príkazu DBCC CHECKTABLE .
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.