KB4040276-FIX: nepriame kontrolné stanovište na tempdb databáza príčina "non-dávať Plánovač" chyba v SQL Server 2016 a 2017

Príznaky

Na základe predvoleného nastavenia sú v databáze tempdb v Microsoft SQL Server 2016 a 2017 zapnuté nepriame kontrolné body. Pri náročných podmienkach zaťaženia sa môže vyskytnúť chyba "nepoddajný Plánovač" a sys.dm_os_spinlock_stats DMV zobrazuje zvýšený spinlock tvrdení pre typ DP_LIST spinlock.

Riešenie

Táto oprava je zahrnutá v nasledujúcich aktualizáciách a balíkoch Service Pack:

Informácie o balíku Service Pack pre SQL Server 2016

       Balík Service Pack 2 pre SQL Server 2016

Zostavy SQL servera

Každá nová zostava pre SQL Server obsahuje všetky opravy rýchlych opráv a zabezpečenia, ktoré boli v predchádzajúcej zostave. Odporúčame nainštalovať najnovšie kumulatívne aktualizácie pre SQL Server:

Posledná Kumulatívna aktualizácia pre SQL Server 2017

Najnovšia zostava pre SQL Server 2016

Balíky Service Pack sú kumulatívne. Každý nový balík Service Pack obsahuje všetky opravy, ktoré sa nachádzajú v predchádzajúcich balíkoch Service Pack, spolu s novými opravami. Naším odporúčaním je použiť najnovší balík Service Pack a najnovšiu Kumulatívna aktualizácia pre daný balík Service Pack. Skôr než nainštalujete najnovší balík Service Pack, nemusíte nainštalovať predchádzajúci balík Service Pack. Na vyhľadanie ďalších informácií o najnovšom balíku Service Pack a najnovšej kumulatívnej aktualizácii použite tabuľku 1 v nasledujúcom článku.

Ako zistiť úroveň verzie, vydania a aktualizácie SQL servera a jeho súčastí

Alternatívne riešenie

Ak chcete tento problém obísť, vypnite nepriame kontrolné stanovište v databáze tempdb použitím niektorého z týchto tvrdení jazyka DDL (Data Definition Language).

Toto by sa malo vykonať takto:

  • V databáze modeldb (to tiež zmení predvolenú hodnotu pre nové databázy), spustite nasledujúci príkaz:

    ALTER DATABASE [model] SET TARGET_RECOVERY_TIME = 0 MINUTES

  • Alebo priamo z databázy tempdb zakaždým, keď sa inštancia spustí pomocou SQL servera agenta pomocou tohto príkazu:

    ALTER DATABASE [tempdb] SET TARGET_RECOVERY_TIME = 0 MINUTES

  • Alebo pravidelne vydávanie manuálnych kontrolných bodov v databáze tempdb pomocou nasledujúceho príkazu:

    use tempdb
    go checkpoint
    go
     

    Okrem toho je možné použiť TF 3468 na zakázanie nepriameho kontrolného bodu v tempdb.

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.

Odkazy

Oboznámte sa s terminológiou , ktorú spoločnosť Microsoft používa na popis aktualizácií softvéru. Ďalšie informácie nájdete v nasledujúcich článkoch:

Potrebujete ďalšiu pomoc?

Rozšírte svoje zručnosti
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pripojiť k Microsoft insiderov chcú

Považujete poskytnuté informácie za užitočné?

Ďakujem za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×