SQL Server 2012 αντιμετωπίζει σφάλματα out-of-memory

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 2769594 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Συμπτώματα

2012 Του Microsoft SQL Server ενδέχεται να αντιμετωπίσετε ορισμένα σφάλματα out-of-memory εξαιτίας μιας διαρροής μνήμης εσωτερικό. Σε αυτήν την περίπτωση, της διαρροής μνήμης είναι που καταναλώνεται από τον λογιστών μνήμης MEMORYCLERK_SQLLOGPOOL που χρησιμοποιείται εσωτερικά για τις δραστηριότητες του αρχείου καταγραφής συναλλαγών. Για παράδειγμα, το MEMORYCLERK_SQLLOGPOOL μνήμης λογιστών χρησιμοποιείται εσωτερικά για τις ακόλουθες δραστηριότητες καταγραφής συναλλαγών:
  • ΑΕΔ αλλαγή καταγραφής δραστηριοτήτων στις ρεπλίκες πρωτεύον
  • ΑΕΔ επανάληψη διαχείριση δραστηριοτήτων στις ρεπλίκες δευτερεύοντα διαθεσιμότητα

Αυτό το ζήτημα μπορεί να επιβαρύνεται και από ένα μεγάλο όγκο των συναλλαγών που συγχρονίζονται σε μια παρουσία του SQL Server που φιλοξενεί πολλές βάσεις δεδομένων διαθεσιμότητας. Όταν παρουσιαστεί αυτό το ζήτημα, ένα μήνυμα λάθους που μοιάζει με το ακόλουθο καταγράφεται στο αρχείο καταγραφής σφαλμάτων του SQL:
Απέτυχε η εκχώρηση σελίδες: FAIL_PAGE_ALLOCATION 8
Σφάλμα: 701, σοβαρότητας: 17, κατάσταση: 107.
Δεν υπάρχει αρκετή μνήμη συστήματος στο χώρο συγκέντρωσης πόρων «εσωτερικού» για να εκτελέσετε αυτό το ερώτημα.
Σφάλμα: 701, σοβαρότητας: 17, κατάσταση: 123.
Δεν υπάρχει αρκετή μνήμη συστήματος στο χώρο συγκέντρωσης πόρων 'PoolName' για να εκτελέσετε αυτό το ερώτημα.
Σφάλμα: 701, σοβαρότητας: 17, κατάσταση: 107. (Params:). Το σφάλμα εκτυπώνεται σε terse κατάσταση, επειδή παρουσιάστηκε σφάλμα κατά τη μορφοποίηση. Ανίχνευση, ETW, οι ειδοποιήσεις κλπ παραλείπονται.
Σφάλμα: 17312, σοβαρότητας: 16, κατάσταση: 1.
SQL Server τερματίζεται ένα σύστημα ή φόντο εργασία HADR εργασίας εξαιτίας σφαλμάτων στην έναρξη της εργασίας (κατάσταση εγκατάστασης 1).
AppDomain 3181 (<appdomain>) έχει επισημανθεί για unload λόγω πίεση μνήμης.
Κατάργηση φόρτωσης του AppDomain 3181 (<appdomain>).
Σφάλμα: 9602, σοβαρότητα: 16, κατάσταση: 1.
Απέτυχε η εκκίνηση μιας εργασίας συστήματος με κωδικό σφάλματος 28709, κράτος 19.
Σφάλμα: 17300, σοβαρότητα: 16, κατάσταση: 1.
SQL Server δεν ήταν δυνατό να εκτελέσει μια νέα εργασία στο σύστημα, είτε επειδή δεν υπάρχει αρκετή μνήμη ή ο αριθμός των περιόδων λειτουργίας που έχουν ρυθμιστεί υπερβαίνει το μέγιστο επιτρεπόμενο του διακομιστή. Βεβαιωθείτε ότι ο διακομιστής έχει επαρκή μνήμη. Χρησιμοποιήστε το sp_configure με την επιλογή 'συνδέσεις χρήστη' για να ελέγξετε το μέγιστο πλήθος επιτρεπόμενων συνδέσεων χρηστών. Χρησιμοποιήστε sys.dm_exec_sessions για να ελέγξετε τον τρέχοντα αριθμό των περιόδων λειτουργίας, συμπεριλαμβανομένων των διεργασιών του χρήστη.
Σφάλμα: 17312, σοβαρότητας: 16, κατάσταση: 1.
SQL Server τερματίζεται ένα σύστημα ή φόντο εργασία HADR εργασίας εξαιτίας σφαλμάτων στην έναρξη της εργασίας (κατάσταση εγκατάστασης 1).
Σφάλμα: 18054, σοβαρότητας: 16, κατάσταση: 1.</appdomain></appdomain>
Όταν η παρουσία του SQL Server φιλοξενεί μια βάση δεδομένων που εμπλέκεται σε μια ομάδα διαθεσιμότητα ΑΕΔ του SQL Server, ενδέχεται να αποτύχει το συγχρονισμό δεδομένων μεταξύ ρεπλικών. Για να επιλύσετε το πρόβλημα, μπορείτε να διακόψετε και στη συνέχεια, κάντε επανεκκίνηση του SQL Server.

Όταν οι συνθήκες out-of-memory παρουσιάζεται, ενδέχεται να αποτύχει στην ομάδα διαθεσιμότητα μέσω στη ρεπλίκα δευτερεύοντα διαθεσιμότητα και η Πρώην κύρια ρεπλίκα μπορεί να συνεχίσει την επίτευξη σφάλματα, έως ότου διακοπεί και επανεκκίνηση της υπηρεσίας. Διαθεσιμότητα ομάδας μπορεί να περάσετε στην επίλυση ή άγνωστη κατάσταση και όλες τις βάσεις δεδομένων της διαθεσιμότητας ομάδας μπορεί να είναι προσβάσιμη, μέχρι να γίνει επανεκκίνηση της υπηρεσίας SQL για να ελευθερώσετε τη μνήμη συνόλου καταγραφής.

Μπορείτε να εκτελέσετε την πρόταση DBCC MEMORYSTATUS όταν αρχίζει η αποτυχία να παρατηρήσετε στην έξοδο που καταναλώνονται πολλά gigabyte μνήμης από το MEMORYCLERK_SQLLOGPOOL λογιστών μνήμης. Το ακόλουθο είναι ένα παράδειγμα εξόδου:
KB MEMORYCLERK_SQLLOGPOOL (κόμβος 0)
---------------------------------------- -----------
VM δεσμευτεί 0
VM διαπράξει 0
Κλειδωμένων σελίδων που έχουν εκχωρηθεί 0
SM δεσμευτεί 0
SM διαπράξει 0
Σελίδες εκχωρημένες 823544
Μπορείτε επίσης να δείτε τον αριθμό των σελίδων μνήμης του προβλήματος, εκτελώντας τα ακόλουθα ερωτήματα DMV:
SELECT * FROM sys.dm_os_memory_clerks WHERE type='MEMORYCLERK_SQLLOGPOOL'
SELECT type, name, pages_in_bytes/ 1024 AS PMO_KB FROM sys.dm_os_memory_objects WHERE type like 'MEMOBJ_LOGPOOL%'
Ένα άλλο πιθανό ζήτημα είναι τον SQL Server ερωτήματα θα μπορούσε να περιμένει για RESOURCE_SEMAPHORE waittype όταν η περιοχή μνήμης buffer δεν μπορούν να συγκεντρωθούν αμέσως λόγω του μεγάλου αριθμού των καταναλωτών καταγραφής χώρου συγκέντρωσης.

Αυτή η επείγουσα επιδιόρθωση επιλύει τα ακόλουθα ζητήματα:
  • Διαρροή μνήμης διορθώνεται στο εσωτερικό ανάγνωση εμπρός μηχανισμού που χρησιμοποιείται για να εντοπίσετε τα σύνολα καταγραφής συναλλαγών που χρησιμοποιούνται από το ΑΕΔ και άλλες δραστηριότητες εντατικής καταγραφής συναλλαγών στον SQL Server 2012.
  • Όταν υπάρχει χαμηλή μνήμη, SQL Server εκδίδει τη εσωτερική καταγραφής pool memory επιθετικά, για να ανακτήσετε από αποτυχίες out-of-memory πιο ομαλά.

Προτεινόμενη αντιμετώπιση

Αθροιστική ενημερωμένη έκδοση πληροφοριών

Αθροιστική ενημερωμένη έκδοση 2 για SQL Server 2012 SP1

Η ενημέρωση κώδικα για αυτό το ζήτημα κυκλοφόρησε πρώτα την αθροιστική ενημερωμένη έκδοση 2. Για περισσότερες πληροφορίες σχετικά με τον τρόπο απόκτησης αυτού του πακέτου αθροιστική ενημερωμένη έκδοση για τον SQL Server 2012 SP1, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
2790947 Το πακέτο αθροιστική ενημερωμένη έκδοση 2 για SQL Server 2012 Service Pack 1
Σημείωση Επειδή το build που είναι αθροιστικές, κάθε νέα έκδοση της ενημέρωσης κώδικα περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2012 SP1 έκδοση της ενημέρωσης κώδικα. Σας συνιστούμε να εξετάσετε εφαρμογή της πιο πρόσφατης έκδοσης της ενημέρωσης κώδικα που περιέχει αυτήν την επείγουσα επιδιόρθωση. Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
2772858 Δημιουργεί το 2012 διακομιστή SQL που κυκλοφόρησαν μετά την κυκλοφορία του SQL Server 2012 Service Pack 1

Αθροιστική ενημερωμένη έκδοση 5 για τον SQL Server 2012

Η ενημέρωση κώδικα για αυτό το ζήτημα κυκλοφόρησε πρώτα την αθροιστική ενημερωμένη έκδοση 5. Για περισσότερες πληροφορίες σχετικά με τον τρόπο απόκτησης αυτού του πακέτου αθροιστική ενημερωμένη έκδοση για τον SQL Server 2012, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
2777772 Αθροιστική ενημερωμένη έκδοση πακέτου 5 για SQL Server 2012
Σημείωση Επειδή το build που είναι αθροιστικές, κάθε νέα έκδοση της ενημέρωσης κώδικα περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που συμπεριλήφθηκαν με την προηγούμενη 2012 του SQL Server έκδοση της ενημέρωσης κώδικα. Σας συνιστούμε να εξετάσετε εφαρμογή της πιο πρόσφατης έκδοσης της ενημέρωσης κώδικα που περιέχει αυτήν την επείγουσα επιδιόρθωση. Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω για να προβάλετε το άρθρο της Γνωσιακής βάσης της Microsoft:
2692828 Δημιουργεί το 2012 διακομιστή SQL που κυκλοφόρησαν μετά την κυκλοφορία του SQL Server 2012

Πληροφορίες επείγουσας επιδιόρθωσης

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

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

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

Απαίτηση επανεκκίνησης

Δεν χρειάζεται να κάνετε επανεκκίνηση του υπολογιστή μετά την εφαρμογή αυτής της επείγουσας επιδιόρθωσης.

Προϋποθέσεις

Για να εφαρμόσετε αυτήν την επείγουσα επιδιόρθωση, πρέπει να έχετε εγκατεστημένο το SQL Server 2012.

Πληροφορίες αρχείου

Η καθολική έκδοση αυτής της επείγουσας επιδιόρθωσης έχει τα χαρακτηριστικά αρχείου (ή νεότερα χαρακτηριστικά αρχείου) που παρατίθενται στον παρακάτω πίνακα. Οι ημερομηνίες και οι ώρες για τα αρχεία αυτά αναφέρονται σε συντονισμένη παγκόσμια ώρα (UTC). Όταν προβάλλετε τις πληροφορίες του αρχείου, τότε μετατρέπεται σε τοπική ώρα. Για να βρείτε τη διαφορά μεταξύ της ώρας UTC και της τοπικής ώρας, χρησιμοποιήστε την Ζώνη ώρας στο το Ημερομηνία και ώρα το στοιχείο του πίνακα ελέγχου.
Σύμπτυξη αυτού του πίνακαΑνάπτυξη αυτού του πίνακα
Όνομα αρχείουΈκδοση αρχείουΜέγεθος αρχείουΗμερομηνίαΏραΠλατφόρμα
Sqlmin.dll2011.110.2387.032,460,27219-Οκτ-201205: 25x 64
Sqlservr.exe2011.110.2387.0190,94419-Οκτ-201205: 01x 64
Sqlmin.dll2011.110.2387.026,515,93619-Οκτ-201205: 22x 86
Sqlservr.exe2011.110.2387.0160,22419-Οκτ-201205: 17x 86

Ιδιότητες

Αναγν. άρθρου: 2769594 - Τελευταία αναθεώρηση: Πέμπτη, 24 Ιανουαρίου 2013 - Αναθεώρηση: 3.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
Λέξεις-κλειδιά: 
kbtshoot kbautohotfix kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbmt KB2769594 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη: 2769594

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com