SQL serverio užklausos optimizatoriaus karštųjų pataisų sekimo vėliavėlė 4199 priežiūros modelis

Taikoma: Microsoft SQL Server 2005 Standard EditionMicrosoft SQL Server 2005 Enterprise EditionMicrosoft SQL Server 2005 Standard X64 Edition

ĮŽANGA


Microsoft SQL Server versijas vėliau kaip SQL Server 2000 3 pakeitimų paketą (SP3) pristatomi dauguma karštųjų pataisų užklausos optimizatoriaus-numatytasis būsenos, siekiant išvengti esamą gamybos klientams matyti turėtų plano pakeitimų, kuriuos gali sukelti efektyvumo regresijos. Pirmiausia, kiekviena karštoji pataisa buvo pristatomi pagal atskirą sekimo žymę. Vėliau, ši praktika buvo pakeistas, kad dauguma flags kartu su vienu stebėti vėliava (4199). Ši nauja praktika buvo pradėta per kelias versijas, pradedant nuo šių naujinimų:
  • SQL Server 2005 Service Pack 3 (SP3) kaupiamąjį naujinimą 6
  • SQL Server 2008 1 pakeitimų paketas (SP1) 7 kaupiamųjų naujinimų paketas
  • SQL Server 2008 R2 (RTM)
4199 sekimo žymę buvo naudojama rinkti karštosios pataisos, kurios buvo skirti,-numatytasis į naujos versijos, tuo tarpu kitų sekimo žymių buvo naudojamas situacijas nebuvo nustatyti skirti,-numatytasis dabartinę formą. Pradedant nuo SQL Server 2016 RTM, duomenų bazės COMPATIBILITY_LEVEL parametras bus naudojamas įgalinti sekimo žymę 4199 nesusijusios karštosios pataisos,-– kaip numatyta. Šiame straipsnyje aprašoma inžinerija ir strategija, kaip planas veikia karštosios pataisos bus tiekiamas SQL Server 2016 ir naujesnėse versijose.

Daugiau informacijos


SQL Server 2016, sekimo žymė 4199 karštosios pataisos, kurios bus atlikti ankstesnėse laidose SQL serverio bus tapti įjungti pagal COMPATIBILITY_LEVEL 130 duomenų bazė, be 4199 sekimo žymę, įjungtas. 4199 sekimo žymę bus naudojama paleisti jokių ateityje SQL Server 2016 karštųjų pataisų duomenų bazių naudojant 130 suderinamumo lygis. Dėl to, kad 4199 sekimo žymę rekomenduojama tik tiems klientams, kurie mato konkrečius našumo problemos, Klientai patariama pašalinti po to, kai jie perkelti savo duomenų bazes į naujausią suderinamumo lygį, nes 4199 sekimo žymę bus naudoti dar kartą 4199 sekimo žymę ateityje pataisos, kurios gali būti netaikoma savo programą ir gali sukelti netikėtą planą efektyvumo pokyčiai gamybos sistema. Tai reiškia, kad kitą sekimo žymė 4199 karštosios pataisos įjungta kiekvieno suderinamumo lygio, kuris palaiko konkretaus produkto leidimą. Tjau jis naujausią suderinamumo lygis leidžia visas ankstesnes pataisymai pagal 4199 sekimo žymę. Tai reiškia, kad duomenų bazės atnaujinti į naujausią suderinamumo lygį ir pašalinti 4199 sekimo žymę vis dar leidžia visos pataisos, kurios buvo didinant apkrovą, prieš duomenų bazės versijos naujinimas, ne tik naujos pataisos. Jei vėliau Klientai užklausų našumo problemos, Paeksperimentuokite su įgalinimas duomenų bazės srities parinktį QUERY_OPTIMIZER_HOTFIXES arba užklausos užuominą ENABLE_QUERY_OPTIMIZER_HOTFIXES bandymo aplinkoje, Norėdami nustatyti, ar problemos išspręsta. Ieškokite dokumentacijoje, QUERY_OPTIMIZER_HOTFIXES

Pastaba. Pagal numatytuosius nustatymus duomenų bazių, sukurtų SQL Server 2016 naudoti suderinamumo lygis 130 ir naują optimizavimo logika jau įgalinta.Pagrindinis šio modelio privalumas, jis sumažina rizikos gamybos sistemų versijos naujinimo proceso metu. Šis metodas atskiria naują pagrindinės versijos SQL serverio diegimo iš automatinio įjungimo visus naujus užklausos procesorius pakeitimus. Pagrindinės versijos atnaujinimai pakeisti failo formato, nėra grįžtamojo, tai naudinga, kad būtų naudojamas parametras COMPATIBILITY_LEVEL, nes tai leidžia vartotojui greitai ankstesnę versiją, jei netikėtai planas efektyvumo problema naujinant. Jei klientas randa netikėtų planas pakeisti, kuri blokuoja programos versijos naujinimą, klientas gali palengvinti situaciją taikant yra tinkamas planas užuominą naudojant užklausos parduotuvėje priversti išankstinio plano, arba galite palengvinti situaciją susisiekti su "Microsoft" Customer Palaikymo padėti problemos sprendimas ar karštąsias pataisas. Kai visos problemos yra sumažėjęs, galite toliau naujinti. Klientai turėtų integruoti jų versijos naujinimas planavimas SQL Server 2016 šią funkciją.Toliau esančioje lentelėje paaiškinama, kaip 4199 sekimo žymę veiks, pradedant nuo SQL Server 2016 pavyzdį.

Nustatymas SQL suderinamumo lygis Sekimo žymė 4199 Optimizavimo karštosios pataisos prieš SQL Server 2016 RTM Optimizavimo karštosios pataisos po SQL Server 2016 RTM
1. 120 Išjungti Su negalia Su negalia
2. 120 Apie Įjungtas Su negalia
3. 130 Išjungti Įgalintas pagal suderinamumo lygis Su negalia
4. 130 Apie Įgalintas pagal suderinamumo lygis Įgalintas pagal suderinamumo lygis

Pastaba. Nustačius Nr. 3 Rekomenduojame klientams, kurie yra naujai versijos naujinimas į SQL Server 2016.Pagrindinės leidimų po SQL Server 2016, Microsoft planuoja toliau naudoti šio priežiūros modelio optimizavimo karštosios pataisos. Pagal numatytuosius parametrus, arba kiekvienas leidimas, jokių sekimo žymė 4199 karštųjų pataisų iš įjungiama kitą suderinamumo lygį. Tai reiškia, kad, rekomenduojama būsenos klientams, kai jie perkelti į naujausią suderinamumo lygis bus, kad sekimo žymė 4199 išjungta. Vėliau karštosios pataisos naudoti 4199 sekimo žymę, kad pataisos klientams, kurie turite įjungti šių konkrečių karštosios pataisos programos. Klientai, patariama išjungti po to, kai programa yra atnaujinti į naujausią suderinamumo lygį, kad nereikėtų 4199 sekimo žymę netikėtas ateityje optimizatoriaus pakeitimų įjungta programa netikėtai. Kad atnaujinti į naujausią suderinamumo lygį ir pašalinti 4199 sekimo žymę vis tiek galima pasiekti visus išsprendžia, apkrovą buvo didinant prieš naujinimo, ne tik naujos pataisos.

Pastaba Nors daug optimizavimo karštosios pataisos yra įjungta pagal 4199 sekimo žymę, kai naudoti kitus sekimo žymių. Sekimo žymė 4199 anksčiau kuriems sekimo žymių, yra plačiai taikomos ir gali būti įgalintas pagal numatytąjį parametrą į naujos versijos. Alternatyvūs sekimo žymių naudojami karštosios pataisos kai sąlygos yra labai specifinis tik keletą klientams, kai taisyti gali sukelti našumo regresijos programos kitos rūšies arba kai vidinės funkcijos gali pamatyti atliktus pakeitimus, prieš tai jau įgalinimo visiems. Microsoft toliau naudoti kitus sekimo žymių reikia aptarnauti produktą.Pastaba. Šiame straipsnyje dėmesys naudojama paleisti sekimo žymė 4199 karštosios pataisos naujausią suderinamumo lygį naujausią produktą. (Paskelbimo metu, tai yra SQL Server 2016.) Optimizavimo karštosios pataisos gali būti išleistos į rinką senesnės versijos SQL serverio arba SQL serverio 2016 žemesnio suderinamumo lygio (120 arba prieš). Microsoft kiekvienu atveju įvertinti ir nustatyti, ar naudoti 4199 arba kitą sekimo žymę. Dėl to ne karštųjų pataisų pakeitimai taip pat yra įgalinta, kai pereiti į naujesnę suderinamumo lygį, nėra jokių konkrečių atsargos, nekeisti planas įvyks, naujinant (su arba be 4199 sekimo žymę). Klientai turėtų visada patikrinkite keitimus suderinamumo lygiu atidžiai gamybos programos ir turėtų naudoti mažinimo technologijas, pvz., užklausos parduotuvėje, jei yra plano pasirinkimas susijusi problema.Nuoroda, toliau pateiktoje lentelėje išvardyti sekimo žymių, kurie buvo naudojami užklausos procesorius karštąsias pataisas, prieš 4199 sekimo žymę.

"Microsoft" žinių bazės straipsnį Sekimo žymė
318530 4101
940128 4102
919905 4103
920346 4104
920347 4105
922438 4106
923849 4107
926024 4108
926773 4109
933724 4110
934065 4111
946793 4115
950880 4116
948445 4117
942659 4119
953948 4120
942444 4121
946020 4122
948248 4124
949854 4125
959013 4126
953569 4127
955694957872 4128
958547 4129
956686 4131
958006 4133
960770 4135*

SQL Server 2005

Ši problema buvo pirmą kartą buvo išleistas Kaupiamasis naujinimas 6 SQL Server 2005 3 pakeitimų paketą. Jei norite gauti daugiau informacijos apie šį kaupiamųjų naujinimų paketą, spustelėkite toliau straipsnio numerį ir peržiūrėkite straipsnį Microsoft žinių bazėje:
974648 kaupiamojo naujinimo paketo 6 SQL Server 2005 3 pakeitimų paketu
Pastaba. Kadangi komponavimo versijos yra kaupiamosios, kiekvienoje pataisų laidoje būna visos karštosios ir visus saugos pataisas, kurios buvo įtrauktos į ankstesnę SQL Server 2005 nustatyti išleidimo. Rekomenduojame, kad manote, kad pritaikyti pačios naujausios pataisų laidos, kuriame bus šios karštosios pataisos. Norėdami gauti daugiau informacijos, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite „Microsoft Knowledge Base“ žinių bazės straipsnį:
960598 the SQL Server 2005 komponavimo versijos, išleistos po to, kai buvo išleistas SQL Server 2005 3 pakeitimų paketą
Microsoft SQL Server 2005 karštosios pataisos yra sukurti konkrečių SQL serverio pakeitimų paketus. SQL Server 2005 3 pakeitimų paketo karštosios pataisos turi būti taikomas SQL Server 2005 3 pakeitimų paketo diegimas. Pagal numatytuosius nustatymus, bet karštąsias pataisas, pateiktą "SQL Server" pakeitimų paketą yra įtrauktas į kitą "SQL Server" pakeitimų paketą.

SQL Server 2008

Ši problema buvo pirmą kartą buvo išleistas Kaupiamasis naujinimas 7. Jei norite gauti daugiau informacijos apie tai, kaip gauti šį kaupiamųjų naujinimų paketas, skirtas SQL Server 2008, spustelėkite toliau straipsnio numerį ir peržiūrėkite straipsnį Microsoft žinių bazėje:
973601 kaupiamojo naujinimo paketo 7 SQL Server 2008
Pastaba. Kadangi komponavimo versijos yra kaupiamosios, kiekvienoje pataisų laidoje būna visos karštosios ir visus saugos pataisas, kurios buvo įtrauktos į ankstesnę SQL Server 2008 pataisymų laidą. Rekomenduojame, kad manote, kad pritaikyti pačios naujausios pataisų laidos, kuriame bus šios karštosios pataisos. Norėdami gauti daugiau informacijos, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite „Microsoft Knowledge Base“ žinių bazės straipsnį:
956909 the SQL Server 2008 komponavimo versijos, išleistos po to, kai buvo išleistas SQL Server 2008

SQL Server 2008 SP1

Ši problema buvo pirmą kartą buvo išleistas Kaupiamasis naujinimas 7 SQL Server 2008 1 pakeitimų paketą. Jei norite gauti daugiau informacijos apie šį kaupiamųjų naujinimų paketą, spustelėkite toliau straipsnio numerį ir peržiūrėkite straipsnį Microsoft žinių bazėje:
979065 kaupiamojo naujinimo paketo 7, SQL Server 2008 1 pakeitimų paketas
Pastaba. Kadangi komponavimo versijos yra kaupiamosios, kiekvienoje pataisų laidoje būna visos karštosios ir visus saugos pataisas, kurios buvo įtrauktos į ankstesnę SQL Server 2008 pataisymų laidą. Rekomenduojame, kad manote, kad pritaikyti pačios naujausios pataisų laidos, kuriame bus šios karštosios pataisos. Norėdami gauti daugiau informacijos, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite „Microsoft Knowledge Base“ žinių bazės straipsnį:
970365 the SQL Server 2008 komponavimo versijos, išleistos po to, kai buvo išleistas SQL Server 2008 1 pakeitimų paketas
Microsoft SQL Server 2008 karštosios pataisos yra sukurti konkrečių SQL serverio pakeitimų paketus. SQL Server 2008 1 pakeitimų paketo karštosios pataisos turi būti taikomas SQL Server 2008 1 pakeitimų paketo diegimas. Pagal numatytuosius nustatymus, bet karštąsias pataisas, pateiktą "SQL Server" pakeitimų paketą yra įtrauktas į kitą "SQL Server" pakeitimų paketą.

SQL Server 2008 R2

SQL Server 2008 R2 leidimo versiją, 4135 sekimo žymė buvo netyčia neįrašytas sekimo žymių, gali būti kontroliuojami - T4199 sąraše. Tačiau tai nėra nustatyta Kaupiamasis naujinimas 1 SQL Server 2008 R2. Taip, šis Komponavimo versija "ir" SQL Server 2005 ir SQL Server 2008 palaiko leidimai, T4199 pakaks tam, kad tai ir kitų sekimo žymių, išvardytų šiame straipsnyje.

SQL Server 2012 ir naujesnėse versijose

4199 sekimo žymę yra įtrauktas į SQL Server 2012 versijas ir vėlesnes versijas.

Kaip įgalinti 4199 sekimo žymę

Galite įgalinti sekimo žymė 4199 paleisties metu arba vartotojo seanso metu. Šis sekimo žymė yra pasauliniu mastu arba seanso lygio. Norėdami įjungti 4199 sekimo žymę, naudokite DBCC TRACEON komandą arba T 4199 naudoti kaip paleisties parametras. Naudojant DBCC TRACEON\TRACEOFF tai ne, iš naujo sukurkite naują talpyklos planą saugomas procedūras. Planai gali būti talpykloje, sukurtų be sekimo žymę. Išsamios informacijos apie tai, kaip įjungti arba išjungti sekimo žymių ir paaiškinimų, visuotinio ir seanso lygio sekimo žymių, žr. šiose SQL Server interneto knygų temose:

Nuorodos


Jei norite gauti daugiau informacijos apie SQL Server naujinimų pavadinimų suteikimo schemą, spustelėkite toliau straipsnio numerį ir peržiūrėkite straipsnį Microsoft žinių bazėje:
822499 naujo įvardijimo schema, skirta Microsoft SQL Server programinės įrangos naujinimų paketams
Norėdami gauti daugiau informacijos apie programinės įrangos naujinimo terminiją, spustelėkite toliau esančio straipsnio numerį ir peržiūrėkite „Microsoft“ žinių bazės straipsnį:
824684 standartinę terminologiją, vartojamą Microsoft programinės įrangos naujinimams apibūdinti, aprašas