Συμπτώματα
Από προεπιλογή, τα έμμεσα σημεία ελέγχου είναι ενεργοποιημένα για τη βάση δεδομένων tempdb στο Microsoft SQL Server 2016 και 2017. Σε συνθήκες μεγάλου φόρτου εργασίας, ενδέχεται να παρουσιαστεί σφάλμα "Χρονοδιάγραμμα μη απόδοσης" και το DMV sys.dm_os_spinlock_stats εμφανίζει αυξημένη διένεξη spinlock για τον τύπο DP_LIST spinlock.
Επίλυση
Αυτή η ενημέρωση κώδικα περιλαμβάνεται στις ακόλουθες ενημερώσεις και service pack:
- Αθροιστική ενημερωμένη έκδοση 1 για SQL Server 2017
- Αθροιστική ενημερωμένη έκδοση 5 για SQL Server 2016 Service Pack 1
- Αθροιστική ενημερωμένη έκδοση 8 για SQL Server 2016
Πληροφορίες Service Pack για το SQL Server 2016
Service Pack 2 για SQL Server 2016
Σχετικά με τις δομές SQL Server
Κάθε νέα έκδοση για SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και τις επιδιορθώσεις ασφαλείας που υπήρχαν στην προηγούμενη δομή. Συνιστάται να εγκαταστήσετε τις πιο πρόσφατες αθροιστικές ενημερώσεις για SQL Server:
Τελευταία αθροιστική ενημέρωση για το SQL Server 2017
Τελευταία έκδοση για το SQL Server 2016
Σχετικά με τα service pack για SQL Server:
Τα service pack είναι αθροιστικά. Κάθε νέο service pack περιέχει όλες τις ενημερώσεις κώδικα που βρίσκονται σε προηγούμενα service pack, μαζί με τυχόν νέες ενημερώσεις κώδικα. Η σύσταση μας είναι να εφαρμόσετε το πιο πρόσφατο service pack και την πιο πρόσφατη αθροιστική ενημέρωση για αυτό το service pack. Δεν χρειάζεται να εγκαταστήσετε ένα προηγούμενο service pack πριν να εγκαταστήσετε το πιο πρόσφατο service pack. Χρησιμοποιήστε τον Πίνακα 1 στο παρακάτω άρθρο για να βρείτε περισσότερες πληροφορίες σχετικά με το πιο πρόσφατο service pack και την πιο πρόσφατη αθροιστική ενημέρωση.
Λύση
Για να επιλύσετε αυτό το ζήτημα, απενεργοποιήστε τα έμμεσα σημεία ελέγχου στη βάση δεδομένων tempdb, χρησιμοποιώντας μία από τις ακόλουθες προτάσεις γλώσσας ορισμού δεδομένων (DDL).
Αυτό πρέπει να γίνει ως εξής:
Στη βάση δεδομένων modeldb (αυτό αλλάζει επίσης την προεπιλεγμένη τιμή για νέες βάσεις δεδομένων), εκτελέστε την ακόλουθη δήλωση:
ALTER DATABASE [model] SET TARGET_RECOVERY_TIME = 0 MINUTESΉ, απευθείας στη βάση δεδομένων tempdb κάθε φορά που ξεκινά η παρουσία, χρησιμοποιώντας την SQL Server Agent χρησιμοποιώντας την ακόλουθη πρόταση:
ALTER DATABASE [tempdb] SET TARGET_RECOVERY_TIME = 0 MINUTESΉ, εκδίδετε περιοδικά μη αυτόματα σημεία ελέγχου στη βάση δεδομένων tempdb, χρησιμοποιώντας την ακόλουθη πρόταση:
use tempdb
go checkpoint
go
Επιπλέον, το TF 3468 μπορεί να χρησιμοποιηθεί για την απενεργοποίηση του έμμεσου σημείου ελέγχου στο tempdb.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα που αφορά τα προϊόντα της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".
Παραπομπές
Ενημερωθείτε για την ορολογία που χρησιμοποιεί η Microsoft για να περιγράφει τις ενημερώσεις λογισμικού. Για περισσότερες πληροφορίες, ανατρέξτε στα ακόλουθα άρθρα: