Udostępnij za pośrednictwem


Introduction to Transaction Logs

Co SQL Server 2005 Baza danych zawiera dziennik transakcji, który rejestruje wszystkie transakcje i modyfikacje bazy danych przy każdej transakcji. Dziennik transakcji jest krytycznym składnikiem bazy danych i dziennika transakcji w przypadku awarii systemu, może być wymagane, aby przywrócić bazę danych do stanu spójności.Dziennik transakcji nigdy nie powinny zostać usunięte lub przeniesione, chyba że całkowicie rozumiesz konsekwencje to zrobić.

Operacje obsługiwane przez dziennik transakcji

Dziennik transakcji obsługuje następujące operacje:

  • Odzyskiwanie poszczególnych transakcji.

  • Odzyskiwanie wszystkie nieukończone transakcje po SQL Server jest uruchomiona.

  • Stopniowe przywróconej bazy danych, plików, grupa plików lub strona do przodu do punkt awarii.

  • Wspieranie replikacja transakcyjnej.

  • Pomocnicze rozwiązania serwerowe stanu wstrzymania.

Odzyskiwanie transakcje osobno

Jeśli instrukcja ROLLBACK problemów aplikacji lub Database Engine wykrywa błąd takie jak utrata komunikacji z klient, rekordy nie są używane do rejestrowania wycofać zmian wprowadzonych przez transakcję niekompletne.

Odzyskanie wszystkie nieukończone transakcje podczas programu SQL Server jest uruchamianie

Jeśli serwer, na którym uruchomiono SQL Server kończy się niepowodzeniem, baz danych może pozostać w stanie, w którym pewne modyfikacje nigdy nie zostały napisane z buforu pamięci podręcznej plików danych i może być pewne modyfikacje z nieukończone transakcje w pliku danych. Gdy wystąpienie SQL Server jest uruchomiony, uruchamia odzyskiwanie każdej bazy danych. Każda modyfikacja rejestrowane w dzienniku, które mogą być nie zapisane w plikach danych jest wycofywany do przodu.Każda transakcja niekompletne można znaleźć dziennik transakcji jest następnie przywrócenie upewnij się, że zostanie zachowana integralność bazy danych.

Stopniowe przywrócone bazy danych, plik, grupa plików lub strona do przodu do punktów awarii

Po utracie lub dysk błąd sprzętowy wpływu na pliki bazy danych, to możesz przywracanie bazy danych z punktem awarii.Użytkownik pierwszego przywracanie ostatniej kopia zapasowa pełnego bazy danych i ostatniej kopia zapasowa różnicowe bazy danych, a następnie przywracanie sekwencji kolejne kopie zapasowe dziennik transakcji na punkt awarii.Jak przywrócić kopię zapasową każdego dziennika Database Engine ponownie stosuje wszystkie zmiany zarejestrowane w dzienniku do przenieść na przyszły okres wszystkich transakcji. Po przywróceniu ostatniej kopia zapasowa dziennika dziennika Database Engine Aby przywrócić wszystkie transakcje, które nie były kompletne momencie używa informacji dziennika.

Obsługi transakcji replikacja

Agent odczytywania dziennika monitoruje dziennik transakcji o każdej bazy danych, skonfigurowane dla replikacja transakcyjnej i kopiuje transakcje zaznaczone do replikacja z dziennika transakcji do baza danych dystrybucji.Aby uzyskać więcej informacji zobaczW jaki sposób transakcyjne replikacja programu Works.

Pomocnicze rozwiązania Server przejdź w stan wstrzymania

Rozwiązania wstrzymania serwera bazy danych, dublowania, a wysyłanie dziennika, silnie zależeć w dzienniku transakcji.W scenariuszu wysyłki w dzienniku serwer podstawowy wysyła aktywnego dziennika głównej bazy danych do jednego lub kilku miejsc docelowych.Każdy dodatkowy serwer pomocniczy przywraca dziennika jego lokalnej bazy danych do pomocniczego.Aby uzyskać więcej informacji zobaczLog Shipping Overview.

W bazie danych, dublowanie scenariusza przedstawiony jest natychmiast każdej aktualizacji bazy danych, główna baza danych, w oddzielnych, pełną kopię bazy danych, dublowanie bazy danych.Wystąpienie serwer główny natychmiast wysyła każdego rekordu dziennika w wystąpieniu serwer dublowany, dotyczącej przychodzące rekordów dziennika lustrzana baza danych, stale stopniowych do przodu.Aby uzyskać więcej informacji zobaczDatabase Mirroring Overview.

Właściwości dziennik transakcji

Poniżej przedstawiono właściwości SQL Server Database Engine Dziennik transakcji:

  • Dziennik transakcji jest zaimplementowany jako oddzielnego pliku lub zestaw plików w bazie danych.Bufor dziennika jest zarządzana osobno z buforu pamięci podręcznej dla stron danych, co powoduje proste, szybkie i niezawodne kodu w programie Database Engine.

  • Format rekordów dziennika oraz strony nie jest ograniczony zgodnie z formatem stron danych.

  • Dziennik transakcji można zaimplementować w wielu plikach.Pliki można zdefiniować tak, aby rozwinąć automatycznie, należy ustawić wartość FILEGROWTH dla dziennika.Pozwala to ograniczyć możliwości uruchomienia miejsca dziennik transakcji administracyjnych na czasie, gdy na tym samym zmniejszenie czas dodatkowe obciążenie.Aby uzyskać więcej informacji zobaczALTER DATABASE języka Transact-SQL).

  • Mechanizm do ponownego użycia miejsca w plikach dziennika jest szybki i ma minimalny wpływ na wydajność transakcji.