Odzyskiwanie na numer porządkowy dziennika (LSN)

W tym temacie jest odpowiednia tylko dla baz danych, które są przy użyciu modelu odzyskiwanie Pełny lub bulk-logged.

SQL Server 2005 i nowsze wersje umożliwiają służy do definiowania numeru kolejnego dziennika (LSN) punkt odzyskiwanie dla operacji przywracanie.Jest to funkcja specjalistyczne przeznaczone dla dostawców narzędzia i jest mało prawdopodobne, ogólnie użyteczne.

Ostrzeżenie

Informacje dotyczące wymagań przywracania do konkretnych punkt odzyskiwanie, zobacz Przywracanie do punktu w kopii zapasowej bazy danych.

Przywracanie LSN składnię języka Transact-SQL

Za pomocą RESTORE instrukcja, można zatrzymać na lub zaraz przed LSN, w następujący sposób:

  • Use the WITH STOPATMARK ='lsn:<lsn_number>' Klauzula, gdzie lsn:<lsnNumber> jest ciąg , określa, że rekord dziennika, zawierający LSN określony punkt odzyskiwanie.

    STOPATMARK przenieść do przodu w czasies, aby LSN i zawiera tego rekordu dziennika w przenieść do przodu w czasie.

  • Use the WITH STOPBEFOREMARK ='lsn:<lsn_number>' Klauzula, gdzie lsn:<lsnNumber> jest ciąg , określa, że rekord dziennika bezpośrednio przed rekordu dziennika, zawierającą określoną liczbę LSN punkt odzyskiwanie.

    STOPBEFOREMARK toczy się dalej do LSN i wyklucza tego rekordu dziennika z przenieść do przodu w czasie.

Zazwyczaj określonej transakcji wybrano dołączone lub wykluczone.Chociaż nie jest to wymagane, w praktyce rekord określony dziennik jest rekordem zlecania zatwierdzanie.

Aby uzyskać więcej informacji na temat używania LSNs, zobacz Rejestrować numery sekwencji i przywrócić planowania.

Aby uzyskać więcej informacji na temat punktu-w-czas przywraca, zobacz Przywracanie do punktu w kopii zapasowej bazy danych.

Przykłady

W poniższym przykładzie założono, że AdventureWorks2008R2 Baza danych została zmieniona na użyj pełnego model odzyskiwanie.

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