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
Zobacz także