DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 828339 - Geändert am: Dienstag, 28. April 2015 - Version: 1.0

 

Auf dieser Seite

Problembeschreibung

Wenn Sie die folgende Fehlermeldung erhalten, kann dies darauf hinweisen, dass Microsoft SQL Server 2000 Hardware- oder Systemprobleme festgestellt hat, beim Lesen oder in die Datenbankdateien geschrieben wurde:
Fehler 823
E/a-FehlerFehler> während erkanntVorgang> am OffsetOffset> in Datei 'Datei>'

Hinweis Das Format der Fehlermeldung unterscheidet sich leicht in Microsoft SQL Server 2005 und höheren Versionen. Jedoch gelten die gleichen Konzepte und Argumentationspunkte auch für diese Versionen ebenfalls. Fehlerbehebung für dieses Problem in SQL Server 2005 und höheren Versionen, finden Sie in den folgenden KB

2015755  (http://support.microsoft.com/kb/2015755/ ) : Vorgehensweise Problembehandlung bei einer Fehlermeldung 823 Fehler in SQL Server

Weitere Informationen zu den einzelnen Teilen dieser Nachricht z. B.Fehler> undVorgang>, und Weitere Informationen über die Verwendung des Microsoft Windows-API-Aufrufe, die durch SQL Server 2000 finden Sie im Abschnitt "Weitere Informationen" dieses Artikels.

Lösung

SQL Server 2000 wird der Fehler, der im Abschnitt "Problembeschreibung" dieses Artikels erwähnt wird, wenn die folgenden Bedingungen erfüllt sind:
  • Betriebssystemfehler: ein Windows API-Leseaufruf oder eine WriteWindows API-Call ist nicht erfolgreich und SQL Server stößt einen Operatingsystem-Fehler, die sich beziehen auf den Windows-API-Aufruf. Die folgende Fehlermeldung ist ein Beispiel eines Fehlers 823 für ein Betriebssystem:
    2003-07-28 27.38 spid75 Fehler: 823, Schweregrad: 24,
    Status: 2
    2003-07-28 27.38 spid75 e/a-Fehler 1117 (die Requestcould nicht ausgeführt werden aufgrund einer e/a-Gerät Fehler.) erkannte während lesen Atoffset 0x0000002d460000 in Datei ' e:\program Dateien\Microsoft SQLServer\mssql\data\mydb. MDF "
    Mit Ausnahme der Betriebssystemfehler 6 ("das Handle ist ungültig"), Betriebssystemfehler, die gemeldet werden, für 823errors geeignet sind, die mit einer zugrunde liegenden System oder Hardwareproblemen. Wenn ein Betriebssystemfehler auftritt, selbst wenn die DBCC CHECKDB-Anweisung Problembericht möglicherweise funktioniert mit Hardware-Hersteller, Systemadministrator oder Microsoft Product Support Services Thisproblem aufgelöst.

    Hinweis Sie können oder Fehler aus der DBCC CHECKDB-Anweisung in der Datenbank, die mit der Datei in der Fehlermeldung ist, möglicherweise nicht sichtbar. Wenn Sie einen Fehler 823 sehen, können Sie die DBCC CHECKDB-Anweisung Runthe. Wenn die DBCC CHECKDBstatement keine Fehler meldet, haben Sie wahrscheinlich ein zeitweise Systemproblem oder ein Laufwerkproblem.
  • E/a logischer Überprüfungsfehler: eine schreibgeschützte Windows API-Aufruf bzw. schreibt nieder Windows API-Aufruf für die Datenbank ist erfolgreich, aber dennoch spezifische Logicalchecks für die Daten sind nicht erfolgreich (eine ABGERISSENE Seite zum Beispiel), eine 823 Fehlerrisikos ausgelöst. Die folgende Fehlermeldung ist ein Beispiel eines Fehlers 823 für einen I / Ological check-Fehler:
    2003-09-05 18.90 spid17Error: 823, Schweregrad: 24,
    Status: 2
    2003-09-05 18.90 spid17 I / Oerror (ABGERISSENE Seite) während Lesevorgang bei offset 0 x 00000094004000 in File'F:\SQLData\mydb. MDF'...
    Um dieses Problem zu beheben, führen Sie zunächst die DBCCCHECKDB-Anweisung in der Datenbank, die mit der Datei in der Fehlermeldung verknüpft ist. Wenn die DBCC CHECKDB-Anweisung Fehler meldet, korrigieren Sie die Errorsbefore dieses Problem zu beheben. Überprüfen Sie sollte das Problem auch nach dem TheDBCC CHECKDB Fehler korrigiert wurden oder die DBCC CHECKDB-Anweisung Fehler zu melden, die Microsoft Windows NT-Systemereignisprotokoll für Anysystem Störungen oder datenträgerbezogenen Fehlern. Sie können auch Ihre entsprechenden Diagnose Hardware Vendorto erreichen.

Weitere Informationen

Details Fehlermeldung

Die Teile der folgenden Fehlermeldung 823 werden hier detaillierter beschrieben:
Fehler 823
E/a-FehlerFehler> während erkanntVorgang> am OffsetOffset> in Datei 'Datei>'
Die Meldungsinformationen Fehler 823 kann detaillierter erläutert:
  • Fehler>: Dies kann Systemfehler Anoperating oder ein logischer e/a-Überprüfungsfehler sein. Für eine betriebliche Systemerror folgt der Betriebssystemfehlernummer "E/a-Fehler." Der Text der Systemfehler Theoperating wird in Klammern nach "e/a-Fehler enthalten.Fehlernummer."

    Für einen logischen e/a-Checkfailure die Fehlermeldung wird in Klammern und kann es sich um folgende:
    • (ABGERISSENE Seite): Weitere Informationen zu korrupten Seiten finden Sie unter SQL Server 2000-Onlinedokumentation.
    • (falsche Seiten-ID): Dies bedeutet, dass die Seiten-ID auf der Kopfzeile nicht die erwartete Seite ist, die von der Festplatte gelesen wurde. Beispielsweise stellt SQL Server 2000 einen Datei-offset für Datenbankdatei 1, der für die logische Seite 100 ist, sollte die Seiten-ID auf der Kopfzeile für diese Seite mit 8 KB 1: 100 lauten. Wenn nicht, die falsche-ID Seiten ist in der logischen e/a-Überprüfungsfehlermeldung enthalten.
    • (nicht genügend Bytes übertragen): dieses Problem gibt an, dass der Windows-API-Aufruf erfolgreich war, aber die übertragenen Bytes wurden nicht die erwarteten waren.
  • <operation>: Dies ist das Lesen oder schreiben.</operation>
  • <offset>: Dies ist das physikalische Byte-Offset vom Start der Datei. Dividieren diese Zahl durch 8192 wird die logische Seitenzahl geben, die von dem Fehler betroffen ist.</offset>
  • <file>: Dies ist die Datei, die Ihre/O Problem zugeordnet ist und den vollständigen physischen Pfad enthält.</file>

SQL Server-i/o- und Windows-API

SQL Server 2000 verwendet standardmäßige Windows-API-Aufrufe, wie ReadFile, ReadFileScatter, WriteFile, und WriteFileGather, um e/a mit seinen Datenbankdateien durchzuführen. Wenn SQL Server 2000 Windows API-Aufrufe verwendet, die Datei bereits erfolgreich geöffnet wurde, oder SQL Server 2000 wird nicht versuchen, daraus zu lesen oder zu schreiben. Daher wird, wenn eine Windows API-Schreibaufruf nicht erfolgreich ist und der Fehler etwas anderes als der Betriebssystemfehler 6 ("Ungültiges Handle") ist, der Fehler wahrscheinlich in Windows oder eine Softwarekomponente auf niedrigerer Ebene, wie z. B. einen Gerätetreiber ausgelöst wird. Da der Betriebssystemfehler 6 ein ungültiges Handle ist, kann das Problem auftreten, wenn SQL Server ein ungültiges Handle verwendet, um eine Windows API-Schreibaufruf durchzuführen. Allerdings kann dies immer noch ein Systemproblem sein.

Z. B. Wenn Sie in der SQL Server-Fehlerprotokolldatei die folgende Fehlermeldung auftreten, bei der SQL Server-Betriebssystemfehler 2 beim Speichern auf die primäre Datenbank Tempdb verwendet einen Windows-API-Aufruf:
Fehler: 823, Schweregrad: 24, Status: 4
E/a-Fehler 2 (die angegebene Datei wurde nicht gefunden.) festgestellt bei Offset 0 x 00000000284000 in Datei 'D:\Programme\Microsoft c:\Programme\Microsoft SQL Server\MSSQL\data\tempdb.mdf'
Da SQL Server die Datei bereits erfolgreich geöffnet wurde und nicht Fehler "Ungültiges Handle" erhalten, wird der Fehler wahrscheinlich in einer Low-Level-Softwarekomponente, z. B. das Dateisystem oder einem Gerätetreiber ausgelöst wird. Dieses Problem ist nicht auf ein Problem hinweist, in SQL Server, und es muss untersucht werden, als ein Problem mit dem Dateisystem oder einen Gerätetreiber, der mit der Datei verknüpft ist.

Informationsquellen

Zusätzliche Diagnoseinformationen für Fehler 823 kann in der SQL Server-Fehlerprotokolldatei geschrieben werden, wenn Sie Ablaufverfolgungsflag 818 verwenden. Weitere Informationen zu diesen Informationen klicken Sie auf die folgende Artikelnummer, um den Artikel der Microsoft Knowledge Base anzuzeigen:
826433  (http://support.microsoft.com/kb/826433/ ) PRB: Zusätzliche SQL Server-Diagnose hinzugefügt, um nicht berichtete e/a-Probleme aufzuspüren
SQL Server erfordert die Zustellungsgewährleistung stabile Medien unterstützen gemäß der Microsoft SQL Server ununterbrochenes Storage Solution Review Program. FoWeitere Informationen zu den Eingabe- und Anforderungen für die SQL Server-Datenbank-Engine klicken Sie auf die folgende Artikelnummer, um den Artikel der Microsoft Knowledge Base anzuzeigen:
967576  (http://support.microsoft.com/kb/967576/ ) Microsoft SQL Server-Datenbank-Engine Input/Output Anforderungen

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 2000 64-Bit Edition
  • Microsoft SQL Server 2000 Analysis Services
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Enterprise Evaluation Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Reporting Services
  • Microsoft SQL Server 2000 Standard Edition
Keywords: 
kbprb kbmt KB828339 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell übersetzt und wird dann möglicherweise mithilfe des Community Translation Framework (CTF) von Mitgliedern unserer Microsoft Community nachbearbeitet. Weitere Informationen zu CTF finden Sie unter http://support.microsoft.com/gp/machine-translation-corrections/de.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 828339  (http://support.microsoft.com/kb/828339/en-us/ )
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store