Freigeben über


Wiederherstellen zu einer Protokollfolgenummer (LSN)

Symbol, dass einen blauen Datenbankdatenträger zeigt. Dieses Thema ist nur für Datenbanken relevant, die das vollständige oder das massenprotokollierte Wiederherstellungsmodell verwenden.

In SQL Server 2005 haben Sie die Möglichkeit, eine Protokollfolgenummer (Log Sequence Number oder LSN) zum Definieren des Wiederherstellungspunktes für einen Wiederherstellungsvorgang zu verwenden. Hierbei handelt es sich um ein auf Anbieter von Tools zugeschnittenes Feature, das nur in speziellen Fällen nutzbringend anzuwenden ist.

Transact-SQL-Syntax für das Wiederherstellung zu einer LSN

Mithilfe einer RESTORE-Anweisung können Sie bei oder direkt vor der LSN stoppen, wie im Folgenden gezeigt:

  • Verwenden Sie die WITH STOPATMARK ='lsn:<lsn_number>'-Klausel, wobei lsn:<lsnNumber> eine Zeichenfolge darstellt, die angibt, dass der Protokolldatensatz mit der angegebenen LSN der Wiederherstellungspunkt ist.
    Von STOPATMARK wird ein Rollforward zur LSN ausgeführt und dieser Protokolldatensatz im Rollforward eingeschlossen.
  • Verwenden Sie die WITH STOPBEFOREMARK ='lsn:<lsn_number>'-Klausel, wobei lsn:<lsnNumber> eine Zeichenfolge darstellt, die angibt, dass der Protokolldatensatz direkt vor dem Protokolldatensatz mit der angegebenen LSN der Wiederherstellungspunkt ist.
    Von STOPBEFOREMARK wird ein Rollforward bis zur LSN ausgeführt und dieser Protokolldatensatz aus dem Rollforward ausgeschlossen.

Typischerweise wird eine bestimmte Transaktion zum Einschließen oder Ausschließen ausgewählt. Praktisch handelt es sich bei dem angegebenen Protokolldatensatz um einen Transaktionscommitdatensatz, wobei diese Angabe nicht zwingend erforderlich ist.

Weitere Informationen zum Verwenden von LSNs finden Sie unter Protokollfolgenummern und Wiederherstellungsplanung.

Weitere Informationen zur Wiederherstellung bis zu einem bestimmten Zeitpunkt finden Sie unter Wiederherstellen einer Datenbank bis zu einem Punkt in einer Sicherung.

Beispiele

In diesem Beispiel wird davon ausgegangen, dass die AdventureWorks-Datenbank so geändert wurde, dass das vollständige Wiederherstellungsmodell verwendet wird.

RESTORE LOG AdventureWorks FROM DISK = 'c:\adventureworks_log.bak' 
WITH STOPATMARK = 'lsn:15000000040000037'
GO

Siehe auch

Konzepte

Anwenden von Transaktionsprotokollsicherungen
Einfügung in Protokollfolgenummern

Andere Ressourcen

RESTORE (Transact-SQL)
Implementieren von Wiederherstellungsszenarien für SQL Server-Datenbanken
Wiederherstellen einer Datenbank bis zu einem Punkt in einer Sicherung
Verwenden von Wiederherstellungssequenzen für SQL Server-Datenbanken

Hilfe und Informationen

Informationsquellen für SQL Server 2005