Μετάβαση στο κύριο περιεχόμενο
Υποστήριξη
Είσοδος με Microsoft
Είσοδος ή δημιουργία λογαριασμού.
Γεια σας,
Επιλέξτε διαφορετικό λογαριασμό.
Έχετε πολλούς λογαριασμούς
Επιλέξτε τον λογαριασμό με τον οποίο θέλετε να εισέλθετε.

Από προεπιλογή, Service Pack 1 για SQL Server 2014 και το Service Pack 3 για SQL Server 2012 περιλαμβάνουν αυτήν την ενημέρωση κώδικα και δεν έχετε να προσθέσετε κάποιες σημαίες εντοπισμού για να ενεργοποιήσετε την ενημέρωση κώδικα. Για να ενεργοποιήσετε την επιδιόρθωση μετά την εγκατάσταση των αθροιστικών ενημερωμένων εκδόσεων στην ενότητα ανάλυση, πρέπει να ξεκινήσετε το Microsoft SQL Server, προσθέτοντας τη σημαία παρακολούθησης Μάρκου παραμέτρους εκκίνησης.

Συμπτώματα

Ας υποθέσουμε ότι εκτελείτε μια παρουσία του Microsoft SQL Server 2014, 2012 διακομιστή SQL, SQL Server 2008 ή SQL Server 2008 R2 σε έναν υπολογιστή που περιέχει πολλούς επεξεργαστές. Όταν ο αριθμός των κλειδωμάτων (τύπος πόρου = βάση ΔΕΔΟΜΈΝΩΝ) για μια συγκεκριμένη βάση δεδομένων υπερβαίνει ένα συγκεκριμένο όριο, αντιμετωπίζετε τα ακόλουθα ζητήματα επιδόσεων:

  • Αυξημένα τιμές παρουσιάζονται για μέτρηση παράταση κλειδώματος LOCK_HASH .

    Σημείωση Ανατρέξτε στην ενότητα "Περισσότερες πληροφορίες" για πληροφορίες σχετικά με τον τρόπο εποπτείας αυτό παράταση κλειδώματος.

  • Ερωτήματα ή λειτουργίες που απαιτούν τα κλειδώματα βάσεων δεδομένων διαρκέσει πολύ χρόνο για να ολοκληρωθεί. Για παράδειγμα, ενδέχεται να παρατηρήσετε τις ακόλουθες καθυστερήσεις απόδοσης:

    • Συνδέσεις του SQL Server

    • Ερωτήματα του συνδεδεμένου διακομιστή

    • sp_reset_connection

    • Συναλλαγές

Σημείωση Για να εντοπίσετε τη λίστα των κλειδωμάτων (τύπος πόρου = βάση ΔΕΔΟΜΈΝΩΝ) σε μια βάση δεδομένων, ανατρέξτε στην ενότητα "Περισσότερες πληροφορίες". Η τιμή ορίου διαφέρει από το περιβάλλον.

Κάθε νέα αθροιστική ενημερωμένη έκδοση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ασφαλείας διορθώνει που συμπεριλήφθηκαν με την προηγούμενη αθροιστική ενημερωμένη έκδοση. Αποσύρετε τις πιο πρόσφατες αθροιστικές ενημερωμένες εκδόσεις για τον SQL Server:


Πληροφορίες άμεσης επιδιόρθωσης
Μια υποστηριζόμενη άμεση επιδιόρθωση είναι διαθέσιμη από τη Microsoft. Ωστόσο, αυτή η άμεση επιδιόρθωση προορίζεται για τη διόρθωση μόνο του προβλήματος που περιγράφεται σε αυτό το άρθρο. Εφαρμόστε αυτήν την άμεση επιδιόρθωση μόνο σε συστήματα που αντιμετωπίζουν το συγκεκριμένο πρόβλημα.

Εάν η άμεση επιδιόρθωση είναι διαθέσιμη για λήψη, θα υπάρχει μια ενότητα "Διαθέσιμη λήψη άμεσης επιδιόρθωσης" στην αρχή αυτού του άρθρου της Γνωσιακής βάσης. Εάν αυτή η ενότητα δεν εμφανίζεται, υποβάλετε μια αίτηση στο τμήμα Εξυπηρέτησης και υποστήριξης πελατών της Microsoft για να αποκτήσετε την άμεση επιδιόρθωση.

Σημείωση Εάν προκύψουν πρόσθετα ζητήματα ή απαιτείται αντιμετώπιση προβλημάτων, ίσως χρειαστεί να δημιουργήσετε ξεχωριστή αίτηση υπηρεσίας. Οι συνηθισμένες χρεώσεις υποστήριξης θα ισχύει για πρόσθετες ερωτήσεις υποστήριξης και θέματα που δεν αφορούν τη συγκεκριμένη επείγουσα επιδιόρθωση. Για μια πλήρη λίστα αριθμών τηλεφώνου υπηρεσία εξυπηρέτησης πελατών της Microsoft και υποστήριξη ή για να δημιουργήσετε μια ξεχωριστή αίτηση εξυπηρέτησης, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:

http://support.microsoft.com/contactus/?ws=supportΣημείωση Η φόρμα "Διαθέσιμη λήψη άμεσης επιδιόρθωσης" εμφανίζει τις γλώσσες για τις οποίες είναι διαθέσιμη η άμεση επιδιόρθωση. Εάν η γλώσσα σας δεν εμφανίζεται, τότε η άμεση επιδιόρθωση δεν είναι διαθέσιμη για αυτήν τη γλώσσα.

Κατάσταση

Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".

Περισσότερες πληροφορίες

Όταν μια εφαρμογή δημιουργεί μια σύνδεση με τον SQL Server, δημιουργεί πρώτα ένα περιβάλλον βάσης δεδομένων. Από προεπιλογή, η σύνδεση θα προσπαθήσει να αποκτήσει κλείδωμα βάσης ΔΕΔΟΜΈΝΩΝ σε κατάσταση λειτουργίας απ. Όταν η σύνδεση έχει διακοπεί ή να αλλάξει κατά τη διάρκεια ζωής της σύνδεσης βάσης δεδομένων περιβάλλοντος θα κυκλοφορήσει η ΒΑΛΒΊΔΑ - κλείδωμα της Βάσης ΔΕΔΟΜΈΝΩΝ . Εάν έχετε πολλές ενεργές συνδέσεις που χρησιμοποιούν το ίδιο περιβάλλον βάσης δεδομένων, μπορείτε να έχετε πολλά κλειδώματα του τύπου πόρου βάσης ΔΕΔΟΜΈΝΩΝ για αυτή τη συγκεκριμένη βάση δεδομένων.

Στον υπολογιστή που έχει 16 ή περισσότερα CPU, μόνο τα αντικείμενα πίνακα Χρησιμοποιήστε έναν συνδυασμό διαμερίσματα κλειδώματος. Ωστόσο, τα κλειδώματα βάσεων δεδομένων δεν έχουν διαμερίσματα. Επομένως, τόσο μεγαλύτερο κλειδώνει τον αριθμό των βάσεων δεδομένων, τόσο περισσότερος χρόνος χρειάζεται για να αποκτήσει κλείδωμα στη βάση δεδομένων του SQL Server. Οι περισσότερες εφαρμογές δεν αντιμετωπίζουν προβλήματα που προκαλούνται από αυτήν τη σχεδίαση. Αλλά καθώς ο αριθμός υπερβαίνει ένα συγκεκριμένο όριο, επιπλέον εργασία και χρόνος απαιτείται για να αποκτήσετε το κλείδωμα. Αν και το κόστος είναι μόνο micro δευτερόλεπτα για κάθε επιπλέον κλειδώματος, το συνολικό χρόνο μπορεί να αυξηθεί γρήγορα επειδή τις λίστες παλαιών αρχείων κατακερματισμού του κλειδώματος είναι προστατευμένα, χρησιμοποιώντας μια παράταση κλειδώματος. Αυτό έχει ως αποτέλεσμα πρόσθετες κύκλους Επεξεργαστή και περιμένει πρόσθετες εργαζομένων για να αποκτήσετε το κλείδωμα.

Αυτή η επείγουσα επιδιόρθωση παρέχει διαμερισματοποίησης βάσης ΔΕΔΟΜΈΝΩΝ lock όταν είναι ενεργοποιημένη η σημαία παρακολούθησης T1236 κατά την εκκίνηση. Δημιουργία διαμερισμάτων το κλείδωμα της βάσης ΔΕΔΟΜΈΝΩΝ , το βάθος της λίστας κλείδωμα διατηρεί διαχείρισης σε κάθε τοπικό διαμέρισμα. Έτσι βελτιστοποιείται σημαντικά τη διαδρομή πρόσβασης που χρησιμοποιείται για να αποκτήσετε ένα κλείδωμα της βάσης ΔΕΔΟΜΈΝΩΝ .

Για να εποπτεύσετε την παράταση κλειδώματος LOCK_HASH , μπορείτε να χρησιμοποιήσετε το παρακάτω ερώτημα.SET NOCOUNT ONCREATE TABLE #spinlock_stats([CaptureTime] datetime,[name] nvarchar(512),[collisions] bigint,
[spins] bigint,[spins_per_collision] real,[sleep_time] bigint,[backoffs] int)
DECLARE @counter int = 1
WHILE @counter < 100
BEGIN
INSERT INTO #spinlock_stats SELECT GETDATE() as "CaptureTime" , * FROM sys.dm_os_spinlock_stats WHERE [name] = 'LOCK_HASH'
WAITFOR DELAY '00:00:05'
SET @counter +=1
END
SELECT * FROM #spinlock_stats ORDER BY [CaptureTime]
DROP TABLE #spinlock_stats
Για περισσότερες πληροφορίες σχετικά με τη διάγνωση και την Επίλυση διένεξης παράταση κλειδώματος στον SQL Server, μεταβείτε στο ακόλουθο έγγραφο:

Τη διάγνωση και την Επίλυση διένεξης παράταση κλειδώματος στον SQL ServerΣημείωση Αν και αυτό το έγγραφο έχει συνταχθεί για SQL Server 2008 R2, οι πληροφορίες είναι εξακολουθούν να ισχύουν για το SQL Server 2012.

Αναφορές

Για περισσότερες πληροφορίες σχετικά με τις σημαίες εντοπισμού στο SQL Server 2012, μεταβείτε στην παρακάτω τοποθεσία Web TechNet:

Πληροφορίες σχετικά με τις σημαίες εντοπισμού στο SQL Server 2012
Για περισσότερες πληροφορίες σχετικά με τον τρόπο για να βρείτε τον αριθμό κλειδωμάτων βάσης δεδομένων στο χρήστη ανά βάση δεδομένων, χρησιμοποιήστε το παρακάτω ερώτημα για να υπολογίσετε αυτήν την τιμή:select Resource_database_id, resource_type, request_mode, request_status, count (*) 'LockCount' from sys.dm_tran_locks
group by Resource_database_id, resource_type, request_mode, request_status


Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

Εξερευνήστε τα πλεονεκτήματα της συνδρομής, περιηγηθείτε σε εκπαιδευτικά σεμινάρια, μάθετε πώς μπορείτε να προστατεύσετε τη συσκευή σας και πολλά άλλα.

Οι κοινότητες σάς βοηθούν να κάνετε και να απαντάτε σε ερωτήσεις, να δίνετε σχόλια και να ακούτε από ειδικούς με πλούσια γνώση.

Σας βοήθησαν αυτές οι πληροφορίες;

Πόσο ικανοποιημένοι είστε με τη γλωσσική ποιότητα;
Τι επηρέασε την εμπειρία σας;
Πατώντας "Υποβολή" τα σχόλια σας θα χρησιμοποιηθούν για τη βελτίωση των προϊόντων και των υπηρεσιών της Microsoft. Ο διαχειριστής IT θα έχει τη δυνατότητα να συλλέξει αυτά τα δεδομένα. Δήλωση προστασίας προσωπικών δεδομένων.

Σας ευχαριστούμε για τα σχόλιά σας!

×