Applies ToMicrosoft SQL Server 2005 Standard Edition Microsoft SQL Server 2005 Enterprise Edition Microsoft SQL Server 2005 Standard X64 Edition Microsoft SQL Server 2005 Enterprise X64 Edition Microsoft SQL Server 2005 Developer Edition Microsoft SQL Server 2005 Workgroup Edition SQL Server 2008 Standard SQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Workgroup SQL Server 2008 R2 Datacenter SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Express SQL Server 2008 R2 Standard SQL Server 2008 R2 Workgroup SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

UVOD

Verzije programa Microsoft SQL Server starije od SQL Server 2000 servisnog paketa 3 (SP3) isporučile su većinu hitnih ispravki u optimizator upita u podrazumevanom stanju da bi se sprečilo da postojeći klijenti proizvodnje vide očekivane promene plana koje mogu da dovedu do regresija performansi. U početku je svaka hitna ispravka isporučena pod odvojenom zastavicom za praćenje. Kasnije je ova praksa promenjena tako da se većina zastavica kombinuje ispod jedne zastavice za praćenje (4199). Ova nova praksa započeta je u više verzija, počevši od sledećih ispravki:

  • SQL Server 2005 servisni paket 3 (SP3) kumulativne ispravke 6

  • SQL Server 2008 servisni paket 1 (SP1) kumulativne ispravke paketa 7

  • SQL Server 2008 R2 (RTM)

Zastavica za praćenje 4199 korišćena je za prikupljanje hitnih ispravki koje su namenjene da postanu podrazumevane u budućem izdanju, dok su druge zastavice za praćenje korišćene u situacijama u kojima popravka nije bila namenjena da postane podrazumevana u trenutnom obliku. Počevši od SQL Server RTM formata 2016, postavka baze podataka COMPATIBILITY_LEVEL će se koristiti za podrazumevanu postavku praćenja zastavica za praćenje 4199. Ovaj članak opisuje mehanizme i smernice o tome kako će hitne ispravke koje utiču na plan biti isporučene za verzije SQL Server 2016 i novije.

Više informacija

U SQL Server 2016, zastavica za praćenje 4199 hitnih ispravki koje su napravljene u prethodnim izdanjima usluge SQL Server biće omogućene u okviru odeljka baza podataka COMPATIBILITY_LEVEL 130 bez omogućene zastavice za praćenje 4199. Zastavica za praćenje 4199 koristiće se za objavljivanje budućih SQL Server 2016 hitnih ispravki za baze podataka korišćenjem 130 nivoa kompatibilnosti. Budući da se zastavica za praćenje 4199 preporučuje samo za klijente koji imaju određene probleme sa performansama, klijentima se preporučuje da uklone zastavicu za praćenje 4199 kada migrnu baze podataka na najnoviji nivo kompatibilnosti zato što će zastavica za praćenje 4199 biti ponovo primenjena za buduće ispravke koje se možda ne primenjuju na aplikaciju i mogu da dovedu do neočekivanih promena u performansama plana u sistemu proizvodnje. To znači da su različite zastavice za praćenje 4199 hitne ispravke omogućene za svaki nivo kompatibilnosti koji je podržan u datom izdanju proizvoda. Najnoviji nivo kompatibilnosti već omogućava sve prethodne ispravke u okviru zastavice za praćenje 4199. To znači da nadogradnja baze podataka na najnoviji nivo kompatibilnosti i uklanjanje zastavice za praćenje 4199 i dalje omogućava sve ispravke koje je radno opterećenje bilo pre nadogradnje baze podataka, ali ne i nove ispravke. Ako korisnici kasnije naiđu na probleme sa performansama upita, eksperimentišite sa omogućavanjem opcije određivanja opsezi baze podataka QUERY_OPTIMIZER_HOTFIXES ili upitima ENABLE_QUERY_OPTIMIZER_HOTFIXES u probnom okruženju kako biste utvrdili da li su problemi rešeni. Pogledajte dokumentaciju o programu QUERY_OPTIMIZER_HOTFIXES

Napomišite Baze podataka kreirane u programu SQL Server 2016 podrazumevano koriste kompatibilnost 130. nivoa i već imaju omogućenu novu logiku optimizatora.Glavna prednost ovog modela jeste to što smanjuje rizik za sisteme proizvodnje tokom procesa nadogradnje. Ovaj pristup odvaja instalaciju nove glavne verzije programa SQL Server od automatskog omogućavanja svih novih promena u procesoru upita. Pošto nadogradnje glavnih verzija menjaju format datoteke i nisu reverzibilne, dobra ideja je da koristite COMPATIBILITY_LEVEL postavku jer to omogućava klijentu da brzo pređi na stariju verziju ako se tokom nadogradnje nađe neočekivani problem sa performansama plana. Ako klijent pronađe neočekivanu promenu plana koja blokira nadogradnju aplikacije, klijent može da ublaži situaciju tako što će primeniti odgovarajući nagoveštaj plana koristeći skladište upita da bi nametnuo prethodni plan ili može da olakša situaciju tako što će kontaktirati Microsoft korisničku podršku kako bi vam pomogao sa problemom radi pružanja zaobilaženja problema ili hitne ispravke. Kada se svi problemi umanje, nadogradnja može da se nastavi. Klijenti bi trebalo da integriše ovu mogućnost u planiranje nadogradnje SQL Server 2016.Sledeća tabela objašnjava model za način na koji će zastavica za praćenje 4199 raditi sa programom SQL Server 2016.

Postavka

SQL nivoa kompatibilnosti

Praćenje zastavice 4199

Hitne ispravke optimizatora pre SQL Server RTM 2016

Optimizator hitne ispravke posle SQL Server RTM 2016

1.

120

Isključeno

Onemogućeno

Onemogućeno

2.

120

On

Omogućeno

Onemogućeno

3.

130

Isključeno

Omogućeno nivoom kompatibilnosti

Onemogućeno

4.

130

On

Omogućeno nivoom kompatibilnosti

Omogućeno nivoom kompatibilnosti

Naime, postavka ne. 3 se preporučuje za klijente koji su novu nadogradnju SQL Server 2016.Za glavna izdanja nakon SQL Server 2016. Microsoft planira da nastavi da koristi ovaj model servisiranje za optimizatorne hitne ispravke. Podrazumevano, ili svako izdanje, bilo koja zastavica za praćenje 4199 hitnih ispravki iz prethodnog izdanja biće omogućena u sledećem nivou kompatibilnosti. To znači da će preporučeno stanje za klijente kada migruju na najnoviji nivo kompatibilnosti biti onemogućeno zastavicom za praćenje 4199. Kasnije hitne ispravke koristile bi zastavicu za praćenje 4199 da bi omogućile popravke za klijente koji treba da omoguće te određene hitne ispravke u aplikaciji. Klijentima se savetuje da onemoguće zastavicu za praćenje 4199 kada se aplikacija nadogradi na najnoviji nivo kompatibilnosti kako ne bi došlo do neočekivanih budućih promena optimizatora omogućenih za aplikaciju neočekivano. Nadogradnjom na najnoviji nivo kompatibilnosti i uklanjanjem zastavice za praćenje 4199 i dalje se omogućavaju sve ispravke koje je radno opterećenje bilo pre nadogradnje, ali ne i nove ispravke.

Napomišite Iako su mnoge hitne ispravke optimizatora omogućene u okviru zastavice za praćenje 4199, neki koriste druge zastavice za praćenje. Zastavica za praćenje 4199 istorijski obuhvaćene zastavicom za praćenje koje su široko primenljive i koje će verovatno biti podrazumevano omogućene u budućem izdanju. Zastavice alternativnog praćenja koriste se na hitnim ispravkama gde su uslovi specifični za samo nekoliko korisnika, gde popravka može da izazove regresije performansi u drugim vrstama aplikacija ili gde unutrašnja funkcionalnost može da vidi promene pre nego što bude spremna da postane omogućena za sve. Microsoft će po potrebi nastaviti da koristi druge zastavice za praćenje.Napomišite Ovaj članak je fokusiran na model za izdanje zastavice za praćenje 4199 hitnih ispravki na najnovijem nivou kompatibilnosti najnovijeg proizvoda. (U ovom trenutku, ovo je SQL Server 2016.) Hitne ispravke optimizatora mogu da se objave na starijim verzijama sistema SQL Server na tržištu ili na nižim nivoima kompatibilnosti (120 ili starijim) iz SQL Server 2016. Microsoft će proceniti svaki slučaj i utvrditi da li treba koristiti zastavicu za praćenje 4199 ili drugu zastavicu za praćenje. Budući da su promene koje nisu hitne omogućene i kada se premesti na noviji nivo kompatibilnosti, ne postoji određeno obećanje da će doći do promena plana tokom nadogradnje (sa zastavicom za praćenje ili bez nje 4199). Klijenti uvek treba pažljivo da testiraju promene na nivou kompatibilnosti za aplikacije proizvodnje i trebalo bi da koriste tehnologije za migraciju, kao što je skladište upita, ako postoji problem sa performansama u vezi sa izborom plana.Na primer, sledeće zastavice za praćenje korišćene su za hitne ispravke procesora upita pre uvođenja zastavice za praćenje 4199:

4101, 4102, 4103, 4104, 4105, 4106, 4107, 4108, 4109, 4110, 4111, 4115, 4116, 4117, 4119, 4120, 4121, 4122, 4124, 4125, 4126, 4127, 4128, 4129, 4131, 4133, 4135.

SQL Server verzije 2012 i novije verzije

Zastavica za praćenje 4199 uključena je u verzije izdanja verzije SQL Server 2012 i novije.

Kako da omogućite zastavicu za praćenje 4199

Možete da omogućite zastavicu za praćenje 4199 pri pokretanju ili u sesiji korisnika. Ova zastavica za praćenje ima efekat globalnog nivoa ili sesije. Da biste omogućili zastavicu za praćenje 4199, koristite komandu DBCC TRACEON ili koristite –T 4199 kao početni parametar.Ako se koristi DBCC TRACEON\TRACEOFF, to ne generiše novi kešisani plan za uskladištene procedure. Planovi su možda u kešu koji su kreirani bez zastavice za praćenje.Detaljne informacije o tome kako da omogućite ili onemogućite zastavice za praćenje i objašnjenja globalnih zastavica za praćenje na nivou sesije potražite u sledećim temama u SQL Server Knjige na mreži:

Reference

Da biste dobili više informacija o šemi imenvanja SQL Server ažuriranja, kliknite na sledeći broj članka da biste videli članak u Microsoft bazi znanja:

822499 Nova šema imeniranja za pakete Microsoft SQL Server softvera Za više informacija o terminologiji ažuriranja softvera kliknite na sledeći broj članka da biste prikazali članak u Microsoft bazi znanja:

824684 Opis standardne terminologije koja se koristi za opisu Microsoft softverskih ispravki

Da li vam je potrebna dodatna pomoć?

Želite još opcija?

Istražite pogodnosti pretplate, pregledajte kurseve za obuku, saznajte kako da obezbedite uređaj i još mnogo toga.

Zajednice vam pomažu da postavljate pitanja i odgovarate na pitanja, dajete povratne informacije i čujete mišljenje od stručnjaka sa bogatim znanjem.