Udostępnij za pośrednictwem


Transaction Log Truncation

Jeśli rekordy dziennika nigdy nie zostały usunięte z dziennik transakcji, czy po pewnym czasie wypełnić całą przestrzeń dysku jest dostępna w plikach dziennika fizycznego.Przyczynia się do obcinania dziennika automatycznie zwolnienia miejsca w dzienniku logicznych do ponownego użycia dziennik transakcji.

Gdy opóźnione jakiegoś powodu, z wyjątkiem obcinania dziennika pojawia się automatycznie w następujący sposób:

  • W obszarze proste model odzyskiwanie, po punkcie kontrolnym.

  • W obszarze pełnego model odzyskiwanie lub zarejestrowane zbiorczej model odzyskiwanie, po wysłaniu dziennika kopia zapasowa dziennika, jeśli punkt kontrolny wystąpił po wykonaniu poprzedniej kopia zapasowa dziennika.Aby uzyskać więcej informacji zobacz „ dziennik obcinania modeli odzyskiwanie pełny i rejestrowane masowych, w obszarze"w dalszej części tego tematu.

Mimo że automatyczne, obcinania dziennika może być opóźnione w wielu różnych czynników.Aby dowiedzieć się, co może opóźnić obcinania dziennika Zobacz Factors That Can Delay Log Truncation.

Important noteImportant Note:

W przypadku wystąpienia znaczne opóźnienie w dzienniku obcinania dziennik transakcji może zapełnić.Aby uzyskać informacje dotyczące sposobu postępowania z dziennik transakcji pełny zobacz Troubleshooting a Full Transaction Log (Error 9002).

Aby architektury informacji na temat obcinania dziennika Zobacz "Jak dziennik obcięcie Works," w dalszej części tego tematu.

Obcinania dziennika w modelu odzyskiwanie pełny i rejestrowane zbiorczej

W obszarze pełnego model odzyskiwanie lub zarejestrowane zbiorczej model odzyskiwanie, nieaktywny część dziennika nie może być obcięta, dopóki wszystkie rekordy dziennika zostały przechwycone w kopia zapasowa dziennika dziennika.Jest to potrzebne, aby zachować łańcuch dzienników— szereg rekordów dziennika o sekwencję nieprzerwane dziennika sekwencji numerów (LSNs).Dziennik jest obcinana podczas wykonywania tworzyć kopię zapasową zapasowej dziennik transakcji, przy założeniu, że następujące warunki:

  • Punkt kontrolny wystąpił, ponieważ w dzienniku ostatniej kopii zapasowej.Punkt kontrolny jest istotne, ale nie są wystarczające do obcinania dziennika zgodnie z model pełnego odzyskiwanie lub modelu odzyskiwanie rejestrowane zbiorczej.Po punkcie kontrolnym w dzienniku pozostaje nienaruszona przynajmniej aż do następnej kopia zapasowa dziennik transakcji.

    Aby uzyskać więcej informacji zobaczPunkty kontrolne i aktywna część dziennika.

  • Nie inne współczynnik uniemożliwia dziennika transakcji.

    Ogólnie rzecz biorąc z regularnego tworzenia kopii zapasowych dziennika jest regularnie zwalniane do wykorzystania w przyszłości.Jednak różne czynniki, takie jak długo działającą transakcję, można tymczasowo zapobiec obcinania dziennika.Aby uzyskać więcej informacji zobaczFactors That Can Delay Log Truncation.

  • Instrukcja kopia zapasowa dziennik nie określa COPY_ONLY WITH.

Do wykonania kopia zapasowa dziennik transakcji

Jak działa obcinania dziennika

Uwaga

Obcięcie nie powoduje zmniejszenia rozmiaru pliku dziennika fizycznego.Fizyczny rozmiar pliku dziennika, zmniejszając wymaga zmniejszania pliku.Aby uzyskać informacje dotyczące zmniejszania rozmiaru pliku dziennika fizycznego Zobacz Shrinking the Transaction Log.

Dziennik transakcji jest plikiem otoczone.Po utworzeniu bazy danych w pliku dziennika logiczne rozpoczyna się od początku fizycznego pliku dziennika.Nowe rekordy dziennika są dodawane na końcu dziennika logicznych i rozwinąć w stronę końca dziennika fizycznego.Dziennik transakcji w bazie danych jest mapowany przez jeden lub więcej fizycznych plików.The SQL Server Database Engine divides each physical log file internally into a number of virtual log files.Obcinania dziennika zwalnia miejsca w dzienniku logicznej przez usunięcie nieaktywny dziennika wirtualnych plików formularza początek dziennika logiczne.Aby uzyskać szczegółowe informacje o architekturze dziennik transakcji zobacz Dziennik transakcji architektury logicznej i Architektura fizyczny dziennik transakcji.

Pliki dziennika wirtualne są jednostki miejsca, które mogą być używane wielokrotnie.Mogą być obcinane tylko wirtualnych plików dziennika, które zawierają rekordy dziennika tylko nieaktywne.Aktywna część dziennik transakcji aktywnego dziennika, nie może zostać obcięta, ponieważ aktywnego dziennika jest wymaganych do odzyskania w bazie danych.Ostatniego punkt kontrolny definiuje aktywnego dziennika.Dziennik może zostać obcięta do tego punkt kontrolny.

Uwaga

Aby uzyskać informacje dotyczące funkcja pliki dziennika w jaki sposób wirtualne Zobacz Architektura fizyczny dziennik transakcji.

Gdy przeprowadzana jest punkt kontrolny, nieaktywny część dziennik transakcji jest oznaczony jako wielokrotnego użytku.Po tej dacie nieaktywny części może można zwolnić przez obcinania dziennika.Obcięcie zwalnia pliki dziennika wirtualnego nieaktywne do ponownego użycia.Po pewnym czasie gdy zwolnionej dzienniku wirtualnego jest zapisywany nowy rekord, wirtualny plik dziennika uaktywniany ponownie.

Jeden fragment informacje rejestrowane w punkt kontrolny jest numer kolejny dziennika (LSN) pierwszego rekordu dziennika, który musi być obecny dla pomyślnego przywrócenia całej bazy danych.Nazywa się to LSN minimalna odzyskiwanie LSN (MinLSN).Początek aktywna część dziennika jest dziennik wirtualny, który zawiera MinLSN.Gdy dziennik transakcji zostanie obcięta do liczby całkowitej, tylko na dziennik rejestruje się na początku tego wirtualny plik dziennika są zwalniane do ponownego użycia.

Poniższej ilustracji Pokaż dziennik transakcji przed i po obcinania.Pierwszy ilustracja pokazuje dziennik transakcji, które nigdy nie został obcięty.Obecnie cztery pliki dziennika wirtualnego są używane przez logiczne dziennika.Logiczne dziennika zaczyna się od początku pierwszego wirtualnego pliku dziennika i kończy się w wirtualnym dziennika 4.Rekord MinLSN znajduje się w wirtualnym dziennika 3.Wirtualny dziennika 1 i dziennik wirtualnego 2 zawiera tylko rekordy nieaktywne dziennika.Te rekordy mogą zostać obcięte.Dziennik wirtualnego 5 jest nadal używana i nie jest częścią bieżącego dziennika logiczne.

Transaction log with four virtual logs

Drugi ilustracji pokazano, jak w dzienniku pojawia się po są obcinane.Wirtualne dziennika 1 i dziennik wirtualnego 2 został już zwolniony do ponownego użycia.Logiczne dziennika rozpoczyna się teraz na początku dziennika wirtualnego 3.Wirtualne dziennika 5 jest nadal używana i nie jest częścią bieżącego dziennika logiczne.

Log file divided into four virtual log files