Simptomi
Neizravne kontrolne točke po zadanom su uključene za bazu podataka tempdb u programima Microsoft SQL Server 2016 i 2017. U uvjetima teškog radnog opterećenja može se pojaviti pogreška "Planer koji ne daje dobit", a sys.dm_os_spinlock_stats DMV prikazuje povećani sadržaj spinlocka za vrstu DP_LIST spinlocka.
Rješenje
Taj je popravak obuhvaćen sljedećim ažuriranjima i servisnim paketom:
-
Kumulativno ažuriranje 5 za SQL Server 2016 Service Pack 1
-
Kumulativno ažuriranje 8 za SQL Server 2016
Informacije o servisnom paketu za SQL Server 2016
O SQL Server međuverzijama
Svaka nova međuverzija za SQL Server sadrži sve hitne popravke i sigurnosne popravke koji su se nalazili u prethodnoj međuverziji. Preporučujemo da instalirate najnovija kumulativna ažuriranja za SQL Server:
Servisni paketi su kumulativni. Svaki novi servisni paket sadrži sve popravke koji se nalaze u prethodnim servisnim paketima zajedno s novim popravcima. Naša je preporuka primijeniti najnoviji servisni paket i najnovije kumulativno ažuriranje za taj servisni paket. Ne morate instalirati prethodni servisni paket prije instalacije najnovijeg servisnog paketa. U tablici 1 u sljedećem članku potražite dodatne informacije o najnovijem servisnom paketu i najnovijem skupnom ažuriranju.
Određivanje razine verzije, izdanja i ažuriranja SQL Server njegovih komponenti
Zaobilazno rješenje
Da biste zaobišli taj problem, isključite neizravne kontrolne točke u bazi podataka tempdb pomoću jedne od sljedećih naredbi jezika za definiranje podataka (DDL).
To treba učiniti na sljedeći način:
-
U bazi podataka modeldb (time se mijenja i zadana vrijednost za nove baze podataka), pokrenite sljedeću naredbu:ALTER DATABASE [model] SET TARGET_RECOVERY_TIME = 0 MINUTES
-
Ili izravno u bazi podataka tempdb svaki put kada se instanca pokrene pomoću SQL Server Agent sljedećom izjavom:ALTER DATABASE [tempdb] SET TARGET_RECOVERY_TIME = 0 MINUTES
-
Ili povremeno izdajete ručne kontrolne točke u bazi podataka tempdb pomoću sljedeće naredbe:use tempdbgo checkpointgo
Osim toga, TF 3468 može se koristiti za onemogućivanje neizravne kontrolne točke na tempdb.
Status
Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku "Odnosi se na".
Reference
Informirajte se o terminologiji koju Microsoft koristi za opisivanje softverskih ažuriranja. Dodatne informacije potražite u sljedećim člancima: