Συνδεσιμότητα SQL Server 2005 και υπηρεσία σκιωδών αντιγράφων τόμου (VSS)

Ισχύει για: Microsoft SQL Server 2005 Standard EditionMicrosoft SQL Server 2005 Enterprise EditionMicrosoft SQL Server 2005 Developer Edition

Στήλη φωνητικής υποστήριξης του SQL Server


Συνδεσιμότητα SQL Server 2005 και υπηρεσία σκιωδών αντιγράφων τόμου

Για να προσαρμόσετε αυτή τη στήλη με τις ανάγκες σας, θέλουμε να σας προσκαλέσουμε να υποβάλετε τις ιδέες σας σχετικά με θέματα που σας ενδιαφέρουν και θέματα που θέλετε να δείτε να αντιμετωπίζονται στα μελλοντικά άρθρα της Γνωσιακής βάσης και να υποστηρίξετε τις φωνητικές στήλες. Μπορείτε να υποβάλετε τις ιδέες και τα σχόλιά σας χρησιμοποιώντας τη φόρμα " Ζητήστε το ". Υπάρχει επίσης μια σύνδεση προς τη φόρμα στο κάτω μέρος αυτής της στήλης.
Καλωσόρισες ξανά! Είμαι ο Sandy Yakob με την ομάδα περιεχομένου του Microsoft SQL Server. Είμαι η οικοδέσποινα για τις στήλες φωνητικής υποστήριξης του SQL Server. Μια γρήγορη σημείωση για μένα: Έχω ήδη με τη Microsoft για 14 χρόνια. Τα τελευταία τρία χρόνια, έχω συνεργαστεί με την ομάδα περιεχομένου του SQL Server. Για τη στήλη αυτού του μήνα, ο Σουρές Kandoth θα αντιμετωπίσει τη συνδεσιμότητα Microsoft SQL Server 2005 και την υπηρεσία σκιωδών αντιγράφων τόμου (VSS). Ο Σουρές είναι μηχανικός κλιμάκωσης με την ομάδα υποστήριξης του SQL Server. Ήταν με τη Microsoft τα τελευταία τέσσερα χρόνια και εργαζόταν σε τεχνολογίες SQL Server. Ελπίζω να απολαύσετε τη στήλη και να τη βρείτε χρήσιμη.

Συνδεσιμότητα SQL Server 2005 και VSS

Σε αυτό το άρθρο, συζητάμε για ζητήματα σύνδεσης SQL Server τα οποία ενδέχεται να αντιμετωπίσετε όταν χρησιμοποιείτε εφαρμογές δημιουργίας αντιγράφων ασφαλείας με δυνατότητα υπηρεσίας σκιωδών αντιγράφων τόμου (VSS).

Πληροφορίες φόντου

Πριν μεταπηδήσετε στις λεπτομέρειες των σφαλμάτων και των προβλημάτων, ας εξετάσουμε τα διάφορα στοιχεία που εμπλέκονται σε αυτήν τη συζήτηση.
  • VSS Το VSS είναι ένα πλαίσιο που αποτελείται από ένα πλαίσιο διεπαφών και δομών που επιτρέπουν στις εφαρμογές να εκτελούν αντίγραφα ασφαλείας τόμων, ενώ άλλες εφαρμογές χρησιμοποιούν τα δεδομένα σε αυτούς τους τόμους. Το VSS περιλαμβάνεται στα Microsoft Windows XP και στον Microsoft Windows Server 2003.
  • Εφαρμογές δημιουργίας αντιγράφων ασφαλείαςΜια εφαρμογή δημιουργίας αντιγράφων ασφαλείας είναι οποιαδήποτε εφαρμογή των Windows που ζητά ένα αντίγραφο ασφαλείας στιγμιότυπου να λαμβάνεται με τη χρήση VSS. Για παράδειγμα, η εφαρμογή δημιουργίας αντιγράφων ασφαλείας των Windows NT που περιλαμβάνεται στα Windows είναι μια εφαρμογή δημιουργίας αντιγράφων ασφαλείας.
  • ΣυγγραφείςΟι συντάκτες είναι εφαρμογές ή υπηρεσίες που αποθηκεύουν μόνιμες πληροφορίες στο δίσκο και συνεργάζονται με τις υπηρεσίες παροχής και τους αιτούντες μέσω του περιβάλλοντος εργασίας σκιωδών αντιγράφων. Θα συζητήσουμε για το MSDEWriter Writer και το SqlServerWriter Writer σε αυτό το άρθρο.
    • MSDEWriter: το MSDEWriter Writer είναι ένα πρόγραμμα εγγραφής VSS για τον SQL Server. Το MSDEWriter περιλαμβάνεται με το πλαίσιο VSS στα Windows XP και τον Windows Server 2003. Το MSDEWriter λειτουργεί με τον SQL Server 7,0, τον SQL Server 2000 και τον SQL Server 2005.
    • SqlServerWriter: το SqlServerWriter Writer είναι ένα πρόγραμμα εγγραφής VSS για τον SQL Server. Το SqlServerWriter περιλαμβάνεται στον SQL Server 2005. Το SqlServerWriter λειτουργεί μόνο με τις παρουσίες του SQL Server 2005.

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

Ίσως να αναρωτιέστε γιατί τα στοιχεία πλαισίου VSS θα πρέπει να συνδεθούν με τον SQL Server όταν τα στοιχεία εκτελούν μόνο ένα αντίγραφο ασφαλείας του τόμου. Κατά τη διάρκεια των αρχικών φάσεων της δημιουργίας στιγμιότυπου, το ρυθμισμένο προεπιλεγμένο πρόγραμμα εγγραφής δημιουργεί μια σύνδεση με τις παρουσίες του SQL Server στον συγκεκριμένο διακομιστή. Μία από τις πρώτες φάσεις μιας διαδικασίας δημιουργίας στιγμιότυπου είναι η "Προετοιμασία δημιουργίας αντιγράφων ασφαλείας". Κατά τη διάρκεια αυτής της φάσης, η εφαρμογή δημιουργίας αντιγράφων ασφαλείας (αιτών) εκτελεί τις ακόλουθες ενέργειες για να βεβαιωθείτε ότι όλα τα στοιχεία στη διαδικασία δημιουργίας στιγμιότυπου είναι έτοιμα:
  • Η εφαρμογή δημιουργίας αντιγράφων ασφαλείας συνδέεται με το περιβάλλον εργασίας του IVssBackupComponents .
  • Η εφαρμογή δημιουργίας αντιγράφων ασφαλείας προετοιμάζει το περιβάλλον εργασίας IVssBackupComponents.
  • Η εφαρμογή δημιουργίας αντιγράφων ασφαλείας καλεί το API IVssGatherWriterMetadata για την εκτέλεση απαρίθμησης μετα-δεδομένων.
Στη συνέχεια, το πλαίσιο VSS καθοδηγεί όλους τους συντάκτες να συλλέξουν μετα-δεδομένα. Αυτό περιλαμβάνει μια προεπιλεγμένη συσκευή εγγραφής που περιλαμβάνεται στον SQL Server. Μπορεί να είναι είτε MSDEWriter είτε SqlServerWriter με βάση τις τρέχουσες ρυθμίσεις του διακομιστή. Αυτή η προεπιλεγμένη συσκευή εγγραφής για τον SQL Server συνδέεται με όλες τις παρουσίες του SQL Server που έχουν ξεκινήσει στο τοπικό σύστημα και λαμβάνει τις απαιτούμενες πληροφορίες σχετικά με τις βάσεις δεδομένων στην παρουσία του SQL Server και, στη συνέχεια, δημιουργεί το έγγραφο μετα-δεδομένων. Το έγγραφο μετα-δεδομένων επιστρέφεται στη συνέχεια στην εφαρμογή δημιουργίας αντιγράφων ασφαλείας.

Αναγνώριση του συντάκτη

Είτε το MSDEWriter είτε το SqlServerWriter θα εκτελέσουν την απαρίθμηση μετα-δεδομένων. Έτσι, είτε το MSDEWriter είτε το SqlServerWriter θα πρέπει να συνδεθούν με την παρουσία του SQL Server. Για να προσδιορίσετε ποιο πρόγραμμα εγγραφής έχει ρυθμιστεί από προεπιλογή ως το πρόγραμμα εγγραφής για την παρουσία του SQL Server, χρησιμοποιήστε τις ακόλουθες πληροφορίες.
Έκδοση SQL ServerΚλειδί μητρώου MSDEVersionChecking = 0 [ή απουσιάζει]Κλειδί μητρώου MSDEVersionChecking > 0
7.0Η απαρίθμηση μετα-δεδομένων γίνεται από το MSDEWriterΗ απαρίθμηση μετα-δεδομένων γίνεται από το MSDEWriter
2000Η απαρίθμηση μετα-δεδομένων γίνεται από το MSDEWriterΗ απαρίθμηση μετα-δεδομένων γίνεται από το MSDEWriter
2005Η απαρίθμηση μετα-δεδομένων γίνεται από το MSDEWriterΗ απαρίθμηση μετα-δεδομένων γίνεται από το SqlServerWriter
Η τιμή MSDEVersionChecking βρίσκεται στο κλειδί μητρώου του HKEY_LOCAL_MACHINE \system\currentcontrolset\services\vss\settings . Αυτή είναι μια τιμή DWORD και μπορεί να μην είναι παρούσα, εκτός εάν τη δημιουργήσετε με μη αυτόματο τρόπο. Παρόλο που το SqlServerWriter είναι εγκατεστημένο με τον SQL Server 2005, δεν έχει ρυθμιστεί ως προεπιλεγμένη συσκευή εγγραφής για τον SQL Server 2005. Πρέπει να ρυθμίσετε με μη αυτόματο τρόπο το SqlServerWriter ως προεπιλεγμένο πρόγραμμα εγγραφής. Για περισσότερες πληροφορίες, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web: Όταν αντιμετωπίζετε προβλήματα σύνδεσης από το πρόγραμμα εγγραφής στην παρουσία του SQL Server, πρέπει να γνωρίζετε τις ακόλουθες σημαντικές πληροφορίες:
  • Όταν το MSDEWriter προσπαθεί να κάνει μια σύνδεση, το VSS ενεργεί ως πρόγραμμα-πελάτης στον SQL Server για αυτήν τη συγκεκριμένη προσπάθεια σύνδεσης.
  • Όταν το SqlServerWriter προσπαθεί να κάνει μια σύνδεση, η υπηρεσία SQL Server VSS Writer λειτουργεί ως πρόγραμμα-πελάτης στον SQL Server για αυτήν τη συγκεκριμένη προσπάθεια σύνδεσης.

Προβλήματα όταν το πρόγραμμα εγγραφής επιχειρεί να συνδεθεί με τον SQL Server

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

Προβλήματα ελέγχου ταυτότητας

Όταν είναι εγκατεστημένη η υπηρεσία VSS και η υπηρεσία SQLWriter, ο λογαριασμός εκκίνησης υπηρεσίας έχει ρυθμιστεί ως τοπικό σύστημα [NT AUTHORITY\SYSTEM]. Όταν το πρόγραμμα εγγραφής επιχειρήσει να δημιουργήσει μια σύνδεση με τις παρουσίες του SQL Server, το πρόγραμμα εγγραφής χρησιμοποιεί τα διαπιστευτήρια του λογαριασμού εκκίνησης του τοπικού συστήματος [NT AUTHORITY\SYSTEM]. Πρέπει να βεβαιωθείτε ότι οι παρουσίες του SQL Server έχουν εκχωρήσει πρόσβαση σε αυτόν το λογαριασμό των Windows είτε ρητά είτε μέσω της ιδιότητας μέλους ομάδας των προβλημάτων ελέγχου ταυτότητας BUILTIN\Administrators.If προκύψουν, τα ακόλουθα μηνύματα καταγράφονται στο αρχείο καταγραφής συμβάντων των Windows.
Μήνυμα 1
Τύπος συμβάντος: σφάλμα Source: SQLWRITEREvent κατηγορία: καμία ID: 24583Date: 4/30/2006Time: 11:38:44 διασκεδαστική: N/υπολογιστή:όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση IDBInitialize:: αρχικοποίηση. HR = 0x80040e4d. SQLSTATE: 28000, εγγενής σφάλμα: 18456Error State: 1, σοβαρότητα: 14Source: Microsoft SQL Native ClientError Message: η σύνδεση απέτυχε για το χρήστη "NT AUTHORITY\SYSTEM". DBPROP_INIT_DATASOURCE: όνομα_υπολογιστήDBPROP_INIT_CATALOG: MASTERDBPROP_AUTH_INTEGRATED: SSPI
Μήνυμα 2
Τύπος συμβάντος: σφάλμα Source: SQLWRITEREvent κατηγορία: καμία ID: 24583Date: 4/30/2006Time: 11:38:44 διασκεδαστική: N/υπολογιστή:όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση IDBInitialize:: αρχικοποίηση. HR = 0x80040e4d. SQLSTATE: 28000, εγγενής σφάλμα: 18456Error State: 1, σοβαρότητα: 14Source: Microsoft SQL Native ClientError Message: η σύνδεση απέτυχε για το χρήστη "NT AUTHORITY\SYSTEM". DBPROP_INIT_DATASOURCE: όνομα_υπολογιστήDBPROP_INIT_CATALOG: MASTERDBPROP_AUTH_INTEGRATED: SSPI
Μήνυμα 3
Ενδέχεται να αντιμετωπίσετε το ακόλουθο σφάλμα κατά τη χρήση του SQL Server VSS Writer για τη λήψη ενός αντιγράφου ασφαλείας:
Log Name: ApplicationSource: SQLWRITEREvent ID: 24581Task Category: NoneLevel: ErrorDescription: Sqllib Error: System Table sys. sysdatabases στην παρουσία του SQL Server <όνομα SQL Server> είναι κενό. Εάν ο λογαριασμός τοπικού συστήματος δεν έχει ΤΡΟΠΟΠΟΙΉΣΕΙ οποιαδήποτε βάση δεδομένων ή να προβάλει οποιαδήποτε δικαιώματα επιπέδου διακομιστή ΒΆΣΗς δεδομένων ή να ΔΗΜΙΟΥΡΓΉΣΕΙ δικαιώματα ΒΆΣΗς δεδομένων στην κύρια βάση δεδομένων, τότε θα προκύψει το παραπάνω σφάλμα, καθώς δεν θα μπορεί να υποβάλει ερώτημα στην προβολή καταλόγου sys. Databases. Η κατοχή db_datareader δικαιωμάτων δεν επαρκεί για να επιτύχει αυτή η λειτουργία.
Αυτή η λειτουργία απαιτεί ο λογαριασμός τοπικού συστήματος (ΑΡΧΉς/συστήματος NT) να έχει ένα από τα εξής:
  • ΤΡΟΠΟΠΟΊΗΣΗ οποιουδήποτε δικαιώματος επιπέδου διακομιστή ΒΆΣΗς δεδομένων
  • Προβολή ΟΠΟΙΩΝΔΉΠΟΤΕ δικαιωμάτων επιπέδου διακομιστή ΒΆΣΗς δεδομένων
  • ΔΗΜΙΟΥΡΓΊΑ δικαιωμάτων ΒΆΣΗς δεδομένων στην κύρια βάση δεδομένων
Μήνυμα 4
Τύπος συμβάντος: σφάλμα Source: VSSEvent κατηγορία: καμία ID: 6013Date: 4/30/2006Time: 11:38:44 διασκεδαστική: N/υπολογιστή:όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση IDBInitialize:: αρχικοποίηση. HR = 0x80040e4d. SQLSTATE: 42000, εγγενής σφάλμα: 18456Error State: 1, σοβαρότητα: 14Source: υπηρεσία παροχής Microsoft OLE DB για SQL ServerError Message: η σύνδεση απέτυχε για το χρήστη "NT AUTHORITY\SYSTEM".
Μπορείτε να προσδιορίσετε με σαφήνεια το πρόγραμμα εγγραφής που αντιμετώπισε το πρόβλημα χρησιμοποιώντας την προέλευση συμβάντων. Το πρώτο σφάλμα είναι από το SqlServerWriter. Το δεύτερο σφάλμα είναι από το MSDEWriter. Εάν εκτελείτε ένα ίχνος SQL Profiler και το συμβάν " Αποτυχία ελέγχου σύνδεσης " περιλαμβάνεται στην ανίχνευση, οι ακόλουθες πληροφορίες καταγράφονται για το συμβάν.
SQL Server 2005
SQL Server 2000
Μπορείτε να προσδιορίσετε με σαφήνεια το πρόγραμμα εγγραφής που επιχειρεί να δημιουργήσει τη σύνδεση χρησιμοποιώντας το αναγνωριστικό διεργασίας προγράμματος-πελάτη. Εξαιτίας των αυστηρών απαιτήσεων ασφαλείας, οι εγκαταστάσεις του SQL Server ενδέχεται να έχουν καταργήσει την ομάδα BUILTIN\Administrators από τις συνδέσεις SQL Server. Εάν παρουσιαστεί αυτό το πρόβλημα, πρέπει να βεβαιωθείτε ότι ο λογαριασμός NT AUTHORITY\SYSTEM έχει εκχωρηθεί πρόσβαση στον SQL Server. Για να το κάνετε αυτό, πρέπει να το προσθέσετε ως ρητή σύνδεση. Επιπλέον, λόγω των τύπων των λειτουργιών που πρέπει να εκτελέσει το πρόγραμμα εγγραφής, συνιστάται να μην καταργήσετε τη σύνδεση NT AUTHORITY\SYSTEM από το ρόλο διακομιστή διαχειριστής. Ακόμη και αν το MSDEWriter Writer και το SqlServerWriter Writer μπορούν να συνδεθούν με επιτυχία στον SQL Server, ενδέχεται να αντιμετωπίσουν το ακόλουθο μήνυμα σφάλματος, εάν δεν υπάρχουν επαρκή δικαιώματα για την υποβολή ερωτημάτων στους πίνακες συστήματος ή στις προβολές καταλόγου που περιέχουν τις πληροφορίες σχετικά με τις βάσεις δεδομένων και τα αρχεία που ανήκουν στη βάση δεδομένων:
Τύπος συμβάντος: σφάλμα Source: VSSEvent κατηγορία: καμία ID: 6013Date: 9/4/2006Time: 9:09:43 PMUser: N/υπολογιστή: όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση ICommandText:: Execute. HR = 0x80040e09. SQLSTATE: 42000, εγγενής σφάλμα: 229 κατάσταση σφάλματος: 5, σοβαρότητα: 14Source: υπηρεσία παροχής Microsoft OLE DB για SQL ServerError Message: Επιλέξτε το δικαίωμα άρνησης στο αντικείμενο ' sysaltfiles ', βάση δεδομένων ' Master ', κάτοχος ' dbo '.
Για να αποφύγετε αυτό το μήνυμα σφάλματος, βεβαιωθείτε ότι εκχωρείτε τα κατάλληλα δικαιώματα για το λογαριασμό στον SQL Server. Για παράδειγμα, προσθέστε αυτόν το λογαριασμό στο db_datareader ρόλο βάσης δεδομένων στην κύρια βάση δεδομένων.

Προβλήματα σύνδεσης

Αυτό το είδος προβλήματος παρουσιάζεται όταν το πρόγραμμα εγγραφής δεν μπορεί να δημιουργήσει μια σύνδεση SQL με τις παρουσίες του SQL Server. Το πρόγραμμα εγγραφής που έχει ανατεθεί επιχειρεί να δημιουργήσει μια σύνδεση με μια συγκεκριμένη παρουσία του SQL Server που εκτελείται τη συγκεκριμένη στιγμή. Εάν προκύψει κάποιο πρόβλημα κατά τη δημιουργία μιας σύνδεσης, τα ακόλουθα μηνύματα σφάλματος καταγράφονται στο αρχείο καταγραφής συμβάντων των Windows.
Μήνυμα 1
Τύπος συμβάντος: σφάλμα Source: SQLWRITEREvent κατηγορία: καμία ID: 24583Date: 4/30/2006Time: 12:11:06 PMUser: N/υπολογιστή:όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση IDBInitialize:: αρχικοποίηση. hr = 0x80004005. SQLSTATE: HYT00, εγγενής σφάλμα: 0Source: Microsoft SQL Native ClientError Message: λήξη χρονικού ορίου σύνδεσης έληξε SQLSTATE: 08001, εγγενής σφάλμα: 2Source: Microsoft SQL Native ClientError Message: Παρουσιάστηκε σφάλμα κατά τη δημιουργία μιας σύνδεσης στο διακομιστή. Κατά τη σύνδεση με τον SQL Server 2005, αυτή η αποτυχία μπορεί να οφείλεται στο γεγονός ότι, στην περιοχή των προεπιλεγμένων ρυθμίσεων, ο SQL Server δεν επιτρέπει απομακρυσμένες συνδέσεις. SQLSTATE: 08001, εγγενής σφάλμα: 2 κατάσταση σφάλματος: 1, σοβαρότητα: 16Source: Microsoft SQL Native ClientError Message: επώνυμη υπηρεσία παροχής διοχετεύσεων: δεν ήταν δυνατό το άνοιγμα μιας σύνδεσης με τον SQL Server [2]. DBPROP_INIT_DATASOURCE: όνομα_υπολογιστήDBPROP_INIT_CATALOG: MASTERDBPROP_AUTH_INTEGRATED: SSPI
Μήνυμα 2
Τύπος συμβάντος: σφάλμα Source: SQLWRITEREvent κατηγορία: καμία ID: 24583Date: 4/30/2006Time: 12:52:40 PMUser: N/υπολογιστή:όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση IDBInitialize:: αρχικοποίηση. hr = 0x80004005. SQLSTATE: HYT00, εγγενής σφάλμα: 0Source: Microsoft SQL Native ClientError Message: λήξη χρονικού ορίου σύνδεσης έληξε SQLSTATE: 08001, εγγενής σφάλμα: 10061Source: Microsoft SQL Native ClientError Message: Παρουσιάστηκε σφάλμα κατά τη δημιουργία μιας σύνδεσης στο διακομιστή. Κατά τη σύνδεση με τον SQL Server 2005, αυτή η αποτυχία μπορεί να οφείλεται στο γεγονός ότι, στην περιοχή των προεπιλεγμένων ρυθμίσεων, ο SQL Server δεν επιτρέπει απομακρυσμένες συνδέσεις. SQLSTATE: 08001, εγγενής σφάλμα: 10061 κατάσταση σφάλματος: 1, σοβαρότητα: 16Source: Microsoft SQL Native ClientError Message: υπηρεσία παροχής TCP: δεν ήταν δυνατή η σύνδεση, επειδή ο υπολογιστής-στόχος το αρνήθηκε ενεργά. DBPROP_INIT_DATASOURCE: όνομα_υπολογιστήDBPROP_INIT_CATALOG: MASTERDBPROP_AUTH_INTEGRATED: SSPI
Μήνυμα 3
Τύπος συμβάντος: σφάλμα Source: SQLWRITEREvent κατηγορία: καμία ID: 24583Date: 4/30/2006Time: 4:52:34 PMUser: N/υπολογιστή:όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση IDBInitialize:: αρχικοποίηση. hr = 0x80004005. SQLSTATE: HYT00, εγγενής σφάλμα: 0Source: Microsoft SQL Native ClientError Message: λήξη χρονικού ορίου σύνδεσης έληξε SQLSTATE: 08001, εγγενής σφάλμα: 2Source: Microsoft SQL Native ClientError Message: Παρουσιάστηκε σφάλμα κατά τη δημιουργία μιας σύνδεσης στο διακομιστή. Κατά τη σύνδεση με τον SQL Server 2005, αυτή η αποτυχία μπορεί να οφείλεται στο γεγονός ότι, στην περιοχή των προεπιλεγμένων ρυθμίσεων, ο SQL Server δεν επιτρέπει απομακρυσμένες συνδέσεις. SQLSTATE: 08001, εγγενής σφάλμα: 2 κατάσταση σφάλματος: 1, σοβαρότητα: 16Source: Microsoft SQL Native ClientError Message: κοινόχρηστη υπηρεσία παροχής μνήμης: δεν ήταν δυνατό το άνοιγμα μιας σύνδεσης με τον SQL Server [2]. DBPROP_INIT_DATASOURCE: όνομα_υπολογιστήDBPROP_INIT_CATALOG: MASTERDBPROP_AUTH_INTEGRATED: SSPI
Μήνυμα 4
Τύπος συμβάντος: σφάλμα Source: VSSEvent κατηγορία: καμία ID: 6013Date: 4/30/2006Time: 12:11:06 PMUser: N/υπολογιστή:όνομα_υπολογιστήDescription: Sqllib Error: σφάλμα OLEDB αντιμετώπισε κλήση IDBInitialize:: αρχικοποίηση. hr = 0x80004005. SQLSTATE: 08001, σφάλμα: 17 κατάσταση σφάλματος: 1, σοβαρότητα: 16Source: υπηρεσία παροχής Microsoft OLE DB για SQL ServerError Message: [DBNETLIB] [ConnectionOpen (Connect ()).] Ο SQL Server δεν υπάρχει ή δεν επιτρέπεται η πρόσβαση.
Στα προηγούμενα μηνύματα σφάλματος, προσέξτε πολύ το πρόγραμμα εγγραφής, το πρωτόκολλο που χρησιμοποιείται για τη σύνδεση και το μήνυμα σφάλματος που επιστρέφεται. Αυτά τα σφάλματα δεν καταγράφονται στην ανίχνευση SQL Profiler για τα συμβάντα σύνδεσης ελέγχου . Αυτοί οι τύποι ζητημάτων σύνδεσης ενδέχεται να προκύψουν για τους ακόλουθους λόγους:
  • Τα ψευδώνυμα στον υπολογιστή έχουν ρυθμιστεί με εσφαλμένες πληροφορίες.
  • Δεν υπάρχει κανένα κοινό πρωτόκολλο που χρησιμοποιεί το πρόγραμμα-πελάτης για να συνδεθεί και ότι ο διακομιστής ακούει.
  • Η ρύθμιση παραμέτρων του Microsoft Data Access Components (MDAC) ή η ρύθμιση παραμέτρων του προγράμματος-πελάτη SQL Native Access (SNAC) στον υπολογιστή έχει αλλάξει.
  • Υπάρχουν γνωστά ζητήματα πρωτοκόλλου σε συγκεκριμένες πλατφόρμες ή εκδόσεις του SQL Server.
Για περισσότερες πληροφορίες σχετικά με τη σύνδεση proglems, επισκεφθείτε την ακόλουθη τοποθεσία Web:

Απομόνωση προβλημάτων σύνδεσης

Εάν προκύψει κάποιο από αυτά τα προβλήματα και θέλετε να αποκτήσετε περισσότερες πληροφορίες, δεν χρειάζεται να εκτελείτε επανειλημμένα την εφαρμογή δημιουργίας αντιγράφων ασφαλείας. Μπορείτε να χρησιμοποιήσετε το εργαλείο γραμμής εντολών διαχείρισης VSS (Vssadmin. exe). Για να βεβαιωθείτε ότι χρησιμοποιείτε τα ίδια διαπιστευτήρια και τις ίδιες ρυθμίσεις που χρησιμοποιούνται από το VSS, ακολουθήστε τα παρακάτω βήματα για να εκτελέσετε τις ασκήσεις προσομοίωσης. Σημείωση Τα παρακάτω βήματα σάς επιτρέπουν να ανοίξετε μια γραμμή εντολών χρησιμοποιώντας τα διαπιστευτήρια του λογαριασμού NT AUTHORITY\SYSTEM. Οι συγγραφείς θα χρησιμοποιήσουν επίσης το λογαριασμό NT AUTHORITY\SYSTEM.
  1. Βεβαιωθείτε ότι έχει ξεκινήσει η υπηρεσία χρονοδιαγράμματος εργασιών.
  2. Εάν χρησιμοποιείτε μια σύνδεση υπηρεσιών Terminal Services ή μια σύνδεση απομακρυσμένης επιφάνειας εργασίας, βεβαιωθείτε ότι συνδέεστε στην περίοδο λειτουργίας της ΚΟΝΣΌΛΑς.
  3. Σε μια γραμμή εντολών και πληκτρολογήστε την ακόλουθη εντολή:
    στο 14:05 αλληλεπιδραστική cmd. exe
    Σημείωση Βεβαιωθείτε ότι η ώρα που καθορίζετε σε αυτή την εντολή είναι μπροστά από την τρέχουσα ώρα συστήματος στον υπολογιστή. Όταν επιτευχθεί ο καθορισμένος χρόνος, εμφανίζεται μια νέα γραμμή εντολών. Μοιάζει με το εξής:
    C:\Windows\System32\svchost.exe
  4. Στη νέα γραμμή εντολών, πληκτρολογήστε τα εξής:
    Συντάκτες λίστας vssadmin
  5. Εξετάστε το αποτέλεσμα για να καθορίσετε ποιοι συγγραφείς παρατίθενται και την κατάσταση αυτών των συγγραφέων, ιδιαίτερα MSDEWriter και SqlServerWriter.Σημείωση Εάν προκύψει κάποιο πρόβλημα με την απαρίθμηση μετα-δεδομένων, οι συντάκτες δεν θα εμφανίζονται στη λίστα. Πρέπει να βεβαιωθείτε ότι το σωστό πρόγραμμα εγγραφής παρατίθεται στην έξοδο Vssadmin χωρίς σφάλματα. Αυτό πρέπει να συμβεί πριν μια εφαρμογή δημιουργίας αντιγράφων ασφαλείας μπορεί να χρησιμοποιήσει ένα πρόγραμμα εγγραφής κατά τη διαδικασία δημιουργίας στιγμιότυπου.
Για κάθε παρουσία του SQL Server, πρέπει να εξετάσετε το αρχείο καταγραφής σφαλμάτων του SQL Server για να κατανοήσετε ποια πρωτόκολλα αυτή την παρουσία του SQL Server ακούει αυτήν τη στιγμή. Οι τυπικές καταχωρήσεις που θα παρατηρήσετε παρατίθενται παρακάτω.
SQL Server 2005
2006-04-29 13:00:59.31 το όνομα του διακομιστή spid4s είναι "όνομα_υπολογιστή". Αυτό είναι ένα ενημερωτικό μήνυμα μόνο. Δεν απαιτείται καμία ενέργεια από το χρήστη. 2006-04-29 13:01:00.57 Server Server Listening on [' any ' <IPv4> 1433]. 2006-04-29 13:01:00.59 Server Server Local Connection Provider είναι έτοιμο να αποδεχθεί τη σύνδεση στο [\\.\pipe\SQLLocal\MSSQLSERVER]. 2006-04-29 13:01:00.59 Server Server Local Connection Provider είναι έτοιμο να αποδεχθεί τη σύνδεση στο [\\.\pipe\sql\query]. 2006-04-29 13:01:00.60 Server Server ακούει [127.0.0.1 <IPv4> 1434]. 2006-04-29 13:01:00.68 Server SQL Server είναι πλέον έτοιμο για συνδέσεις υπολογιστή-πελάτη. Αυτό είναι ένα ενημερωτικό μήνυμα. Δεν απαιτείται ενέργεια χρήστη.
SQL Server 2000
2006-04-30 11:23:08.18 το όνομα του διακομιστή spid3 είναι "όνομα_υπολογιστή\SQL2000". 2006-04-30 11:23:08.18 Server SQL Server Listening on 172.30.137.50:2012.2006-04-30 11:23:08.18 Server SQL Server Listening on 127.0.0.1:2012.2006-04-30 11:23:08.37 Server SQL Server με ακρόαση TCP, κοινόχρηστη μνήμη, επώνυμες διοχετεύσεις. 2006-04-30 11:23:08.37 Server SQL Server είναι έτοιμο για συνδέσεις υπολογιστή
Όταν εξετάζετε τα προηγούμενα παραδείγματα, παρατηρείτε ότι οι παρουσίες του SQL Server κάνουν ακρόαση στα ακόλουθα τρία πρωτόκολλα:
  • TCP
  • Επώνυμες διοχετεύσεις
  • Κοινόχρηστη μνήμη
Με τη ρύθμιση παραμέτρων συγκεκριμένων πρωτοκόλλων, ενδέχεται να υπάρχουν φορές που ο διακομιστής δεν ακούει. Ορισμένες φορές, ακόμα και αν έχετε ρυθμίσει ένα συγκεκριμένο σύνολο πρωτοκόλλων για τον διακομιστή για ακρόαση, ο διακομιστής ενδέχεται να μην μπορεί να ακούσει όλα τα παραπάνω. Αυτό μπορεί να οφείλεται σε περιβαλλοντικά προβλήματα στο διακομιστή. Επομένως, θα πρέπει να ρίξετε μια ματιά στα πρωτόκολλα που έχετε ρυθμίσει για αυτήν τη συγκεκριμένη παρουσία του SQL Server για να ακούσετε. Για τον SQL Server 2005, θα πρέπει να χρησιμοποιήσετε τη διαχείριση ρύθμισης παραμέτρων του SQL Server. Για τον SQL Server 2000, θα πρέπει να χρησιμοποιήσετε το βοηθητικό πρόγραμμα δικτύου διακομιστή. τώρα θα προχωρήσουμε στο τμήμα του προγράμματος-πελάτη της ρύθμισης παραμέτρων του πρωτοκόλλου. Υπάρχουν δύο σημεία ρύθμισης παραμέτρων προγράμματος-πελάτη που πρέπει να λάβετε υπόψη. Το πρώτο είναι η λίστα των πρωτοκόλλων του προγράμματος-πελάτη που έχουν ενεργοποιηθεί. Το άλλο είναι η σειρά με την οποία χρησιμοποιούνται τα πρωτόκολλα προγράμματος-πελάτη για τη σύνδεση. Οι προεπιλεγμένες ρυθμίσεις διαφέρουν σε διάφορα λειτουργικά συστήματα και στις διαφορετικές εκδόσεις και εκδόσεις του SQL Server. Ανατρέξτε στα κατάλληλα θέματα online βιβλία για λεπτομέρειες σχετικά με το ποια είναι η προεπιλεγμένη ρύθμιση. Το βασικό σημείο που πρέπει να καταλάβετε εδώ είναι ότι πρέπει να υπάρχει τουλάχιστον ένα πρωτόκολλο προγράμματος-πελάτη που να ταιριάζει με το πρωτόκολλο διακομιστή. Ο μόνος τρόπος για να εξαναγκάσετε τις συνδέσεις από το πρόγραμμα εγγραφής να περάσουν από ένα συγκεκριμένο πρωτόκολλο είναι να ρυθμίσετε τις παραμέτρους ενός ψευδωνύμου στο διακομιστή. Ούτε το πλαίσιο VSS ούτε οι συντάκτες έχουν ρυθμίσεις παραμέτρων όπου μπορείτε να παρέχετε πληροφορίες σχετικά με τη συγκεκριμένη σύνδεση ή πληροφορίες για τον έλεγχο ταυτότητας για τη χρήση του υπολογιστή-πελάτη. Μπορείτε να εκτελέσετε την παρακάτω απλή δοκιμή για να προσδιορίσετε ποιο πρωτόκολλο χρησιμοποιείται σε ποιες προεπιλεγμένες συνδέσεις στη συγκεκριμένη παρουσία του SQL Server:
  1. Βεβαιωθείτε ότι έχει ξεκινήσει η υπηρεσία χρονοδιαγράμματος εργασιών.
  2. Εάν χρησιμοποιείτε μια σύνδεση υπηρεσιών Terminal Services ή μια σύνδεση απομακρυσμένης επιφάνειας εργασίας, βεβαιωθείτε ότι έχετε συνδεθεί στην περίοδο λειτουργίας της ΚΟΝΣΌΛΑς
  3. Στη γραμμή εντολών, πληκτρολογήστε την ακόλουθη εντολή:
    στο 14:05 αλληλεπιδραστική cmd. exe
    Βεβαιωθείτε ότι ο χρόνος που καθορίζετε σε αυτή την εντολή είναι πιο μπροστά από την τρέχουσα ώρα συστήματος στον υπολογιστή-πελάτη.
  4. Όταν επιτευχθεί ο καθορισμένος χρόνος, ανοίγει ένα νέο παράθυρο γραμμής εντολών που έχει το ακόλουθο όνομα:
    C:\Windows\System32\svchost.exe
    .
  5. Σε αυτό το παράθυρο, εκτελέστε το ερώτημα για την έκδοση του SQL Server:
    • Για τον SQL Server 2005, εκτελέστε το ακόλουθο ερώτημα:
      sqlcmd -E –S<server> -Q"SELECT net_transport FROM sys.dm_exec_connections WHERE session_id = @@spid"
    • Για τον SQL Server 2000, εκτελέστε το ακόλουθο ερώτημα:
      osql -E –S<server> -Q"SELECT net_library FROM sysprocesses WHERE spid = @@spid"
  6. Η έξοδος από αυτό το ερώτημα θα σας παράσχει τις πληροφορίες σχετικά με το πρωτόκολλο που λειτουργεί στον υπολογιστή-πελάτη. Υπάρχει πάντα η πιθανότητα ότι το ερώτημα στο βήμα 5 μπορεί να αποτύχει και να σας δώσει ένα μήνυμα σφάλματος. Θα πρέπει να αντιμετωπίσετε αυτό το σφάλμα και να το επιλύσετε για να βεβαιωθείτε ότι οι παρουσίες του προγράμματος-πελάτη του SQL Server στον τοπικό υπολογιστή μπορούν να συνδεθούν με επιτυχία με την παρουσία του SQL Server στην ερώτηση.
  7. Όταν εκτελείτε την εντολή sqlcmd ή την εντολή osql , μπορείτε να επιβάλετε την πραγματοποίηση των συνδέσεων χρησιμοποιώντας ένα συγκεκριμένο πρωτόκολλο και, στη συνέχεια, να παρατηρείτε το αποτέλεσμα. Για να το κάνετε αυτό, προθήματος το όνομα του διακομιστή με την παράμετρο – S και το πρωτόκολλο που σας ενδιαφέρει να παρατηρείτε. Για παράδειγμα, οι τρεις δυνατότητες είναι:
    • –Stcp:servername
    • –Snp:servername
    • –Slpc:servername
    Σημείωση Σε αυτά τα παραδείγματα, το όνομα_διακομιστή είναι το όνομα του διακομιστή σας.
Για περισσότερες πληροφορίες σχετικά με ένα ζήτημα που παρουσιάζεται σε υπολογιστές που βασίζονται σε Windows Server 2003 x64, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
913100 ΕΠΙΔΙΌΡΘΩΣΗ: το πρόγραμμα εγγραφής MSDE δεν περιλαμβάνεται όταν προσπαθείτε να χρησιμοποιήσετε το εργαλείο Vssadmin. exe για τη λίστα των συγγραφέων σκιωδών αντιγράφων τόμου που έχουν εγγραφεί
Για περισσότερες πληροφορίες σχετικά με τον τρόπο με τον οποίο το SqlServerWriter αλληλεπιδρά με το VSS και τις παρουσίες του SQL Server, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web: Για περισσότερες πληροφορίες σχετικά με το VSS και την αρχιτεκτονική του VSS, επισκεφθείτε την ακόλουθη τοποθεσία του Microsoft Developer Network (MSDN) στο Web:Για περισσότερες πληροφορίες σχετικά με τον τρόπο διαχείρισης της πρόσβασης σε λογαριασμούς και ομάδες του SQL Server για Windows, ανατρέξτε στα παρακάτω θέματα στον SQL Server 2005 Books Online:
  • ΔΗΜΙΟΥΡΓΊΑ ΣΎΝΔΕΣΗς (Transact-SQL)
  • sp_grantlogin (αναφορά Transact-SQL (SQL Server))
Για περισσότερες πληροφορίες σχετικά με τον τρόπο διαχείρισης των πρωτοκόλλων στα οποία εκτελεί ακρόαση ο SQL Server στον SQL Server 2005, επισκεφθείτε την ακόλουθη τοποθεσία του MSDN στο Web: Για περισσότερες πληροφορίες σχετικά με τον τρόπο διαχείρισης των πρωτοκόλλων στα οποία εκτελεί ακρόαση ο SQL Server στον SQL Server 2000, επισκεφθείτε την ακόλουθη τοποθεσία του MSDN στο Web: Για περισσότερες πληροφορίες σχετικά με τον τρόπο διαχείρισης της σειράς πρωτοκόλλων και μιας λίστας πρωτοκόλλων που μπορούν να χρησιμοποιηθούν για συνδέσεις υπολογιστή-πελάτη στον SQL Server 2005, επισκεφθείτε την ακόλουθη τοποθεσία του MSDN στο Web: Για περισσότερες πληροφορίες σχετικά με τον τρόπο διαχείρισης της σειράς πρωτοκόλλων και μιας λίστας πρωτοκόλλων που μπορούν να χρησιμοποιηθούν για συνδέσεις υπολογιστή-πελάτη στον SQL Server 2000, επισκεφθείτε την ακόλουθη τοποθεσία του MSDN στο Web: Για περισσότερες πληροφορίες σχετικά με ζητήματα συνδεσιμότητας, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
827422 Πώς μπορείτε να αντιμετωπίσετε προβλήματα συνδεσιμότητας στον SQL Server 2000
812817 Εκπομπή υποστήριξης: Microsoft SQL Server 2000: αντιμετώπιση προβλημάτων συνδεσιμότητας
Για να βεβαιωθείτε ότι η εγκατάσταση του MDAC λειτουργεί σωστά και ότι οι βιβλιοθήκες δικτύου έχουν εγκατασταθεί σωστά, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web για να κάνετε λήψη του βοηθητικού προγράμματος του Component Checker: Θα ήθελα να ευχαριστήσω τον Σουρές για τη σκληρή δουλειά του σε αυτό το άρθρο. Έχει εμπειρία σε βάθος σε διάφορα προϊόντα του Microsoft Windows Server και απολαμβάνει την υποστήριξη πελατών και τη διόρθωση προβλημάτων. Ελπίζουμε να απολαύσατε το θέμα του τρέχοντος μήνα! Σας ευχαριστούμε για την ανάγνωση! Όπως πάντα, μην διστάσετε να υποβάλετε ιδέες για θέματα που θέλετε να αντιμετωπιστούν σε μελλοντικές στήλες ή στη Γνωσιακή βάση χρησιμοποιώντας τη φόρμα " Ζητήστε τον".