Symptomy

Domyślnie pośrednie punkty kontrolne są włączone dla bazy danych tempdb w Microsoft SQL Server 2016 i 2017. W warunkach intensywnego obciążenia pracą może wystąpić błąd "Harmonogram nieunikatowy", sys.dm_os_spinlock_stats DMV pokazuje podwyższony poziom pozew spinlock dla typu DP_LIST spinlock.

Rozwiązanie

Ta poprawka jest zawarta w następujących aktualizacjach i dodatku Service Pack:

Informacje dotyczące dodatku Service Pack dla programu SQL Server 2016

       Dodatek Service Pack 2 dla programu SQL Server 2016

Informacje o kompilacjach programu SQL Server

Każda nowa kompilacja programu SQL Server zawiera wszystkie poprawki i poprawki zabezpieczeń, które były w poprzedniej kompilacji. Zalecamy zainstalowanie najnowszych aktualizacji skumulowanych dla programu SQL Server:

Najnowsza aktualizacja skumulowana programu SQL Server 2017

najnowsza kompilacja programu SQL Server 2016

Dodatki Service Pack są kumulatywne. Każdy nowy dodatek Service Pack zawiera wszystkie poprawki zawarte w poprzednich dodatkach Service Pack oraz nowe poprawki. Zaleca się stosowanie najnowszego dodatku Service Pack i najnowszej aktualizacji skumulowanej dla tego dodatku Service Pack. Instalowanie poprzedniego dodatku Service Pack przed instalacją najnowszego dodatku Service Pack nie jest konieczne. Skorzystaj z tabeli 1 w poniższym artykule, aby uzyskać więcej informacji o najnowszym dodatku Service Pack i najnowszej aktualizacji skumulowanej.

Jak ustalić poziom wersji, wersji i aktualizacji programu SQL Server i jego składników

Obejście

Aby omiąć ten problem, wyłącz pośrednie punkty kontrolne w bazie danych tempdb, używając jednej z następujących instrukcji DDL (Data Definition Language).

Należy to zrobić w następujący sposób:

  • W bazie danych Modeldb (to również zmienia wartość domyślną dla nowych baz danych) uruchom następującąALTER DATABASE [model] SET TARGET_RECOVERY_TIME = 0 MINUTES

  • Lub bezpośrednio w bazie danych tempdb za każdym razem, gdy wystąpienie jest uruchamiane przy użyciu agenta programu SQL Server, używając następującej instrukcji:

    ALTER DATABASE [tempdb] SET TARGET_RECOVERY_TIME = 0 MINUTES

  • Możesz też okresowo ręcznych sprawdzać bazę danych tempdb, używając następującej instrukcji:use tempdb


    go checkpoint
    go
     

    Ponadto można użyć funkcji TF 3468 w celu wyłączenia pośredniego punktu kontrolnego w pliku tempdb.

Stan

Firma Microsoft potwierdziła, że jest to problem w produktach firmy Microsoft wymienionych w sekcji "Dotyczy".

Informacje

Informacje o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania. Aby uzyskać więcej informacji, zobacz następujące artykuły:

Potrzebna dalsza pomoc?

Rozwijaj swoje umiejętności

Poznaj szkolenia >

Uzyskuj nowe funkcje w pierwszej kolejności

Dołącz do niejawnych testerów firmy Microsoft >

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?

Dziękujemy za opinię!

×