W MS SQL Server polecenie RESTORE LOG służy do
Polecenie RESTORE LOG odtwarza kopię dziennika transakcji. Dziennik zapisuje każdą zmianę danych, więc jego kopie pozwalają odtworzyć bazę do stanu z chwili ostatniej kopii dziennika, a nie tylko z chwili pełnej kopii. Kolejność jest stała: najpierw RESTORE DATABASE z opcją NORECOVERY, potem kolejne kopie dziennika przez RESTORE LOG, a ostatnią z opcją RECOVERY. Do zapamiętania para: BACKUP LOG tworzy kopię dziennika, RESTORE LOG ją odtwarza. Tak odzyskuje się dane po awarii z dokładnością do kilku minut. Kopie dziennika mają sens tylko w modelu odzyskiwania pełnym albo z rejestrowaniem zbiorczym. Opcja STOPAT pozwala odtworzyć bazę do wskazanej chwili.
Słowo LOG łatwo skojarzyć z logowaniem, ale tutaj oznacza dziennik transakcji - stąd błędny pomysł z logowaniem do kopii bezpieczeństwa. Pełną kopię bazy wykonuje BACKUP DATABASE, a nie polecenie zaczynające się od RESTORE, które zawsze odtwarza dane. Dziennika transakcji nie usuwa się z serwera żadnym poleceniem przywracania; jego rozmiar zmniejsza się, wykonując regularne kopie dziennika. RESTORE LOG robi rzecz odwrotną do BACKUP LOG: wczytuje wcześniej zapisaną kopię dziennika i ponownie stosuje zapisane w niej zmiany. Dlatego poprawne jest odtworzenie kopii dziennika transakcji. Warto też odróżnić dwa polecenia o podobnej budowie: BACKUP LOG zapisuje kopię dziennika do pliku, a RESTORE LOG wczytuje ją z pliku i nanosi zmiany na odtwarzaną bazę. Dziennik transakcji nie ma związku z logowaniem użytkowników ani z komunikatami programu. To uporządkowany zapis wszystkich zmian danych w bazie.