Problembeschreibung
Stellen Sie sich folgendes Szenario vor:
-
Sie haben Microsoft SQL Server Protokollversand oder Backup/Restore eingerichtet zwischen zwei Servern.
-
Die primäre Datenbank hat die Transaktionsprotokolldatei (LDF) auf einem Datenträger, der "Bytes pro physischen Sektor" als 512 Bytes gespeichert.
-
Nehmen Sie die Transaktion Sicherungen dieser Datenbank, und versuchen Sie mit Standby-Option in der sekundären Datenbank wiederherstellen.
-
Die sekundäre Datenbank Transaktionsprotokolldatei (LDF) auf einem Datenträger befindet sich "Bytes pro physischen Sektor" als 4.096 Bytes festgelegt.
In diesem Szenario die Wiederherstellung schlägt fehl und gibt die folgende Fehlermeldung angezeigt:
Fehler: 9004, Schweregrad: 16, Status: 6. Fehler beim Verarbeiten des Protokolls für Datenbank- Datenbankname. Wenn möglich, von Backup wiederherstellen. Wenn eine Sicherung nicht verfügbar ist, können Wiederherstellung erforderlich.
Wenn dieser Fehler auftritt, wird die sekundäre Datenbank in einem fehlerverdächtigen Zustand.
Lösung
Kumulative Update
Dieses Problem wurde zuerst in folgenden kumulativen Update von SQL Server behoben:
Hinweis Nach der Installation dieses Updates müssen Sie das Ablaufverfolgungsflag 3057 aktivieren, um dieses Update zu aktivieren. Aktivieren Sie das Ablaufverfolgungsflag 3057 finden Sie Ablaufverfolgungsflags (Transact-SQL) auf der Microsoft Developer Network (MSDN)-Website.
Jede neues Kumulatives Update für SQL Server enthält alle Hotfixes und Security Updates, die in der vorherigen kumulativen Update enthalten waren. Den neuesten kumulativen Updates für SQL Server anzeigen:
Hinweis Für SQL Server 2008 R2 SP3-Instanzen müssen Sie den Server über die neuesten Sicherheitsupdates zu aktualisieren:
Sicherheitsupdate für SQL Server 2008 R2 SP3 herunterladen
Hotfix für SQL Server 2008 R2 SP2Ein unterstützter Hotfix ist von Microsoft erhältlich. Dieser Hotfix soll nur der Behebung des Problems dienen, das in diesem Artikel beschrieben wird. Verwenden Sie diesen Hotfix nur auf Systemen, bei denen dieses spezielle Problem auftritt. Wenn der Hotfix zum Download zur Verfügung steht, gibt es einen Abschnitt "Hotfix download available" ("Hotfixdownload verfügbar") im oberen Bereich dieses Knowledge Base-Artikels. Wenn dieser Abschnitt nicht angezeigt wird, senden Sie eine Anforderung an Microsoft Customer Service and Support, um den Hotfix zu erhalten. Hinweis Falls weitere Probleme auftreten oder andere Schritte zur Problembehandlung erforderlich sind, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Die normalen Supportkosten gelten für zusätzliche Supportfragen und Probleme, die nicht diesem speziellen Hotfix zugeordnet werden können. Eine vollständige Liste der Telefonnummern von Microsoft Customer Service and Support oder eine separate Serviceanfrage erstellen finden Sie auf folgender Microsoft-Website:
http://support.microsoft.com/contactus/?ws=supportHinweis Das Formular "Hotfix Download Available" zeigt die Sprachen an, für die der Hotfix verfügbar ist. Wenn Ihre Sprache nicht angezeigt wird, ist dieser Hotfix für Ihre Sprache nicht verfügbar.
Problemumgehung
Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind. Um dieses Problem zu beheben, verwenden Sie eine der folgenden Methoden:
-
Verschieben der Transaktionsprotokolldatei am Ziel auf einem Laufwerk mit "Bytes pro physischen Sektor" als 512 Bytes. Hinweis Die Standby-Datei noch auf dem Laufwerk befinden, das "Bytes pro physischen Sektor" als 4096 Bytes.
-
Protokoll-Backups ohne die Standby-Option wiederhergestellt. Die STANDBY-Option anstelle der Option WITH NORECOVERY während des Wiederherstellungsvorgangs.
Weitere Informationen
Das Befehlszeilenprogramm Fsutil können Sie um den Wert "Bytes pro physischen Sektor" zu ermitteln. Wenn dieser Parameter nicht in der Ausgabe angezeigt wird, müssen Sie den Hotfix anwenden, der in KB982018angegeben. Um die Art des Laufwerks überprüfen, Sie haben, gehen Sie folgendermaßen vor:
-
Geben Sie den folgenden Befehl in der Eingabeaufforderung ein:Fsutil fsinfo ntfsinfo x : Hinweis In diesem Befehl repräsentiert < x > das Laufwerk, das Sie auschecken möchten.
-
Verwenden Sie die Werte für "Bytes pro Sektor" und "Bytes pro physischen Sektor" die Art des Laufwerks ermitteln Sie. Verwenden Sie dazu die folgende Tabelle.
Wert "Bytes pro Sektor"
Wert "Bytes pro physischen Sektor"
Laufwerkstyp
4096
4096
Native 4K
512
4096
Advanced Format (auch bekannt als 512E)
512
512
512-Byte-nativ