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

Η Microsoft διανέμει ενημερώσεις κώδικα του Microsoft SQL Server 2008 μορφή ενός αρχείου λήψης. Επειδή οι ενημερώσεις κώδικα είναι αθροιστικές, κάθε νέα έκδοση περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2008 έκδοση της ενημέρωσης κώδικα.

Συμπτώματα

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

Msg 9436, επίπεδο 16, κατάσταση 1, γραμμή 1

Κατά την ανάλυση XML: γραμμή 54, χαρακτήρας 12, ετικέτα τέλους δεν συμφωνεί με την ετικέτα έναρξης

Για παράδειγμα, μπορείτε να εκτελέσετε το παρακάτω ερώτημα για να εξαγάγετε το στόχο του buffer_ring από την περίοδο λειτουργίας system_health όταν παρουσιαστεί αδιέξοδη κατάσταση:

select XEventData.XEvent.value('(data/value)[1]', 'varchar(max)') as DeadlockGraphFROM
(select CAST(target_data as xml) as TargetData
from sys.dm_xe_session_targets st
join sys.dm_xe_sessions s on s.address = st.event_session_address
where name = 'system_health') AS Data
CROSS APPLY TargetData.nodes ('//RingBufferTarget/event') AS XEventData (XEvent)
where XEventData.XEvent.value('@name', 'varchar(4000)') = 'xml_deadlock_report'

Σε αυτό το παράδειγμα, το ερώτημα επιστρέφει το σωστό αποτέλεσμα.

Ωστόσο, μπορείτε επίσης να εκτελέσετε το παρακάτω ερώτημα για να μετατραπεί αυτό το γράφημα αδιεξόδου σε μορφή XML:

select cast(XEventData.XEvent.value('(data/value)[1]', 'varchar(max)') as xml) as DeadlockGraphFROM
(select CAST(target_data as xml) as TargetData
from sys.dm_xe_session_targets st
join sys.dm_xe_sessions s on s.address = st.event_session_address
where name = 'system_health') AS Data
CROSS APPLY TargetData.nodes ('//RingBufferTarget/event') AS XEventData (XEvent)
where XEventData.XEvent.value('@name', 'varchar(4000)') = 'xml_deadlock_report'

Σε αυτήν την περίπτωση, που αναμένετε να δείτε το γράφημα αδιεξόδου σε μορφή XML. Ακόμα και αν το γράφημα αδιεξόδου δεν εμφανίζεται σωστά, εξακολουθεί να αναμένουν για να δείτε το περιεχόμενο από την αναφορά xml_deadlock_report έγκυρο XML. Ωστόσο, λαμβάνετε το ακόλουθο μήνυμα λάθους:

Msg 9436, επίπεδο 16, κατάσταση 1, γραμμή 1
Κατά την ανάλυση XML: γραμμή 54, χαρακτήρας 12, ετικέτα τέλους δεν συμφωνεί με την ετικέτα έναρξης

Αιτία

Αυτό το ζήτημα παρουσιάζεται επειδή η διαδρομή κώδικα που δημιουργείται από τη διάταξη XML για το γράφημα αδιεξόδου παραβλέπει το tag κλεισίματος του στοιχείου λίστας θύμα . Επιπλέον, η διαδρομή κώδικα προσθέτει μια ετικέτα που δεν είναι απαραίτητα για το στοιχείο αδιέξοδο .

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


Η ενημέρωση κώδικα για αυτό το ζήτημα κυκλοφόρησε πρώτα στην αθροιστική ενημερωμένη έκδοση 6 για SQL Server 2008 Service Pack 1. Για περισσότερες πληροφορίες σχετικά με αυτό το πακέτο αθροιστική ενημερωμένη έκδοση, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

977443 συγκεντρωτική ενημερωμένη έκδοση πακέτου 6 για SQL Server 2008 Service Pack 1Σημείωση Επειδή το build που είναι αθροιστικές, κάθε νέα έκδοση της ενημέρωσης κώδικα περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2008 έκδοση της ενημέρωσης κώδικα. Συνιστούμε ότι μπορείτε να εξετάσουν την εφαρμογή της πιο πρόσφατης έκδοσης της ενημέρωσης κώδικα που περιέχει αυτήν την επείγουσα επιδιόρθωση. Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

970365 του SQL Server 2008 δημιουργεί που κυκλοφόρησαν μετά την κυκλοφορία του SQL Server 2008 Service Pack 1
Επείγουσες επιδιορθώσεις του Microsoft SQL Server 2008 δημιουργούνται για συγκεκριμένο SQL Server service pack. Μια εγκατάσταση του SQL Server 2008 Service Pack 1, πρέπει να εφαρμόσετε μια επείγουσα επιδιόρθωση του SQL Server 2008 Service Pack 1. Από προεπιλογή, κάθε επείγουσα επιδιόρθωση που παρέχεται σε ένα service pack του SQL Server περιλαμβάνεται στο επόμενο service pack του SQL Server.


SQL Server 2008 R2

Σημαντικό Εάν εκτελείτε το SQL Server 2008 R2, πρέπει να εγκαταστήσετε αυτήν την ενημέρωση κώδικα.

Η ενημέρωση κώδικα για αυτό το ζήτημα κυκλοφόρησε πρώτα στην αθροιστική ενημερωμένη έκδοση 1. Για περισσότερες πληροφορίες σχετικά με τον τρόπο απόκτησης αυτού του πακέτου αθροιστική ενημερωμένη έκδοση για τον SQL Server 2008 R2, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

981355 πακέτο αθροιστικών ενημερώσεων 1 για τον SQL Server 2008 R2Σημείωση Επειδή το build που είναι αθροιστικές, κάθε νέα έκδοση της ενημέρωσης κώδικα περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2008 R2 έκδοση της ενημέρωσης κώδικα. Συνιστούμε ότι μπορείτε να εξετάσουν την εφαρμογή της πιο πρόσφατης έκδοσης της ενημέρωσης κώδικα που περιέχει αυτήν την επείγουσα επιδιόρθωση. Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

981356 του SQL Server 2008 R2 δημιουργεί που κυκλοφόρησαν μετά την κυκλοφορία του SQL Server 2008 R2

Κατάσταση

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

Αναφορές

Για πληροφορίες σχετικά με το μοντέλο τμηματικής συντήρησης για τον SQL Server, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

935897 μια τμηματική μοντέλο συντήρησης είναι διαθέσιμα από την ομάδα του SQL Server για την παράδοση επείγουσες επιδιορθώσεις για ζητήματα που αναφέρθηκαν


Για περισσότερες πληροφορίες σχετικά με τη διάταξη ονομασίας των ενημερωμένων εκδόσεων του SQL Server, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

822499 Νέα διάταξη ονομασίας για τα πακέτα ενημερωμένων εκδόσεων λογισμικού της Microsoft SQL Server
Για περισσότερες πληροφορίες σχετικά με την ορολογία των ενημερώσεων λογισμικού, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο στη Γνωσιακή Βάση της Microsoft:

824684 περιγραφή της βασικής ορολογίας που χρησιμοποιείται για την περιγραφή ενημερωμένων εκδόσεων λογισμικού της Microsoft

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

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

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

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

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

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

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

×