ΕΠΙΔΙΌΡΘΩΣΗ: Μετα-δεδομένων ασυνέπεια σφάλμα μετά την εναλλαγή διαμερίσματα πίνακα και αποθέστε τα αντίστοιχα αρχεία και filegroups

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο έχει μεταφραστεί χρησιμοποιώντας λογισμικό μηχανικής μετάφρασης της Microsoft και μπορείτε να το διορθώσετε χρησιμοποιώντας την τεχνολογία Community Translation Framework (CTF) (Πλαίσιο μετάφρασης κοινότητας). Η Microsoft παρέχει μηχανική μετάφραση, επεξεργασία μετά τη μηχανική μετάφραση από την κοινότητα και άρθρα μεταφρασμένα από επαγγελματίες προκειμένου να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής βάσης σε πολλές γλώσσες. Τα άρθρα μηχανικής μετάφρασης και αυτά που επεξεργάζονται ύστερα από μηχανική μετάφραση ενδέχεται να περιέχουν σφάλματα στο λεξιλόγιο, στη σύνταξη ή/και στη γραμματική. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες μας. Για περισσότερες πληροφορίες σχετικά με το CTF, μεταβείτε στην τοποθεσία http://support.microsoft.com/gp/machine-translation-corrections/el.

Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη: 3095958
Συμπτώματα
Εξετάστε το ακόλουθο σενάριο:
  • Διαθέτει δύο διαμερίσματα πίνακες Microsoft SQL Server 2014 και τα διαμερίσματα του πρώτου πίνακα αντιστοιχίζονται σε διαφορετικά αρχεία και filegroups, χρησιμοποιώντας τον ίδιο συνδυασμό διαμερισμάτων και λειτουργία.
  • Αλλάξτε ένα από αυτά τα διαμερίσματα στο δεύτερο πίνακα και κατόπιν, περικοπή του δεύτερου πίνακα.
  • Απόθεση αρχείων και filegroups που αντιστοιχίζονται στο διαμέρισμα άλλαξε.
  • Μπορείτε να εκτελέσετε μια πρόταση SELECT στο δεύτερο πίνακα.
Σε αυτό το σενάριο, λαμβάνετε το ακόλουθο μήνυμα λάθους:

Msg 606, επίπεδο 21, κατάσταση 1
Ασυνέπεια μετα-δεδομένων. Αναγνωριστικό ομάδα αρχείωναναγνωριστικό ομάδα αρχείων> καθορίζεται για τον πίνακαόνομα πίνακα> δεν υπάρχει. Εκτέλεση DBCC CHECKDB ή CHECKCATALOG.

Κατά την εκτέλεση DBCC CHECKDB/CHECKTABLE, λαμβάνετε το ακόλουθο μήνυμα λάθους:

Δεν είναι δυνατή η επεξεργασία ευρετηρίουΌνομα_ευρετηρίου> πίνακαΌνομα πίνακα> επειδή η ομάδα αρχείων (Αναγνωριστικό ομάδα αρχείωνFileGroupNumber>) δεν είναι έγκυρη.
Προτεινόμενη αντιμετώπιση
Το ζήτημα επιδιορθώθηκε για πρώτη φορά σε την ακόλουθη αθροιστικές ενημερωμένες εκδόσεις του SQL Server: Σύσταση: Εγκαταστήστε την πιο πρόσφατη αθροιστική ενημερωμένη έκδοση για τον SQL Server
Κάθε νέα αθροιστική ενημερωμένη έκδοση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ασφαλείας διορθώνει που συμπεριλήφθηκαν με την προηγούμενη αθροιστική ενημερωμένη έκδοση. Συνιστούμε να κάνετε λήψη και να εγκαταστήσετε τις πιο πρόσφατες αθροιστικές ενημερωμένες εκδόσεις για τον SQL Server:


Σημείωση Αυτή η επιδιόρθωση αποτρέπει μόνο μελλοντικές εμφανίσεις αυτού του ζητήματος. Εάν ήδη αντιμετωπίζετε αυτό το ζήτημα, εξαγάγετε τα δεδομένα σε μια νέα βάση δεδομένων χωρίς οποιαδήποτε υπάρχουσα καταστροφή μετα-δεδομένων. Για να γίνει αυτό, ακολουθήστε τα εξής βήματα:
  1. Για να προσδιορίσετε εάν ένα διαμέρισμα έχει μια μη έγκυρη ομάδα αρχείων, εκτελέστε το παρακάτω ερώτημα για να δείτε αν επιστρέφει ένα αποτέλεσμα:
    SELECT * FROM sys.allocation_units AS au WHERE au.data_space_id NOT IN (SELECT data_space_id FROM sys.filegroups)
  2. Κάνετε τον πίνακα με την καταστροφή μετα-δεδομένων μπορεί να προβληθεί ξανά.

    Εάν το ερώτημα από το βήμα 1 επιστρέφει ένα αποτέλεσμα, το διαμέρισμα με κατεστραμμένα μετα-δεδομένων σάς εμποδίζει να προβολή (επιλέξτε * από) τις γραμμές στον πίνακα. Για να επιλύσετε αυτό το ζήτημα, καταργήστε αυτό το κατεστραμμένο διαμέρισμα.

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

    Για να το κάνετε αυτό, μετακινήστε αυτό το διαμέρισμα σε έναν άλλο πίνακα που χρησιμοποιεί τον ίδιο συνδυασμό διαμέρισης. Αυτός ο πίνακας μπορεί να είναι απλώς έναν κενό πίνακα. Χρησιμοποιήστε το αναγνωριστικό_κοντέινερ από το ερώτημα στο βήμα 1, και να τις ταιριάξει με τις αναγνωριστικό_διαμερίσματος από sys.partitions. (Βεβαιωθείτε ότι έχετε σημειώσει το partition_number.) Χρησιμοποιήστε το partition_number για να εκτελέσετε ένα ΔΙΑΜΈΡΙΣΜΑ ΔΙΑΚΌΠΤΗ ΤΡΟΠΟΠΟΊΗΣΗ του ΠΊΝΑΚΑ από τον πίνακα που unviewable στον πίνακα του ανδρεικέλου. Στον πίνακα του ανδρεικέλου πρέπει να έχουν το ίδιο σύνολο στηλών και χρησιμοποιούν το ίδιο σχήμα διαμερίσματος. Το ερώτημά σας για να βρείτε το διαμέρισμα ασυνεπής ενδέχεται να μοιάζει με το ακόλουθο:

    SELECT au.container_id, au.data_space_id, p.partition_number FROM sys.partitions AS p JOIN sys.allocation_units AS au ON p.partition_id = au.container_id LEFT JOIN sys.filegroups AS fgs ON fgs.data_space_id = au.data_space_id WHERE object_id = OBJECT_ID('MyTableName') AND fgs.data_space_id IS NULL;
  3. Αντιγράψτε τα δεδομένα από τον πίνακα που unviewable προηγουμένως στη νέα βάση δεδομένων.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".

Προειδοποίηση: Αυτό το άρθρο έχει μεταφραστεί αυτόματα

Ιδιότητες

Αναγνωριστικό άρθρου: 3095958 - Τελευταία αναθεώρηση: 04/11/2016 17:16:00 - Αναθεώρηση: 2.0

Microsoft SQL Server 2014 Service Pack 1

  • kbfix kbqfe kbexpertiseadvanced kbsurveynew kbmt KB3095958 KbMtel
Σχόλια