Zostanie obcięty automatycznie, ale różni się znacznie od kurczenia. Obcinanie odzyskuje przestrzeń dziennika do ponownego użycia, zmniejszając fizycznie zmniejsza rozmiar pliku, aby zwolnić miejsce z powrotem do systemu operacyjnego. Jeśli Twój dziennik urósł do obecnego rozmiaru, prawdopodobnie wzrośnie on ponownie, jeśli go zmniejszysz.
Sugeruję zapoznanie się z typowym i maksymalnym wykorzystaniem dzienników dla twojego systemu. Poniższe zapytanie (nie moje, wzmocnione skryptami Glen Berrys DMV) można uruchomić ręcznie lub przechwycić dane wyjściowe do tabeli za pomocą zadania agenta. Jeśli zalogujesz się do stołu przez około tydzień, otrzymasz obraz typowego użycia i, co ważniejsze, gdy proces powoduje, że dziennik rośnie ponad to, czego oczekujesz.
SELECT
db.[name] AS [Database Name]
, db.recovery_model_desc AS [Recovery Model]
, db.log_reuse_wait_desc AS [Log Reuse Wait Description]
, ls.cntr_value AS [Log Size (KB)]
, lu.cntr_value AS [Log Used (KB)]
, CAST(
CAST(lu.cntr_value AS FLOAT) / CAST(ls.cntr_value AS FLOAT)
AS DECIMAL(18,2)
) * 100 AS [Log Used %]
, db.[compatibility_level] AS [DB Compatibility Level]
, db.page_verify_option_desc AS [Page Verify Option]
, db.is_auto_create_stats_on, db.is_auto_update_stats_on
, db.is_auto_update_stats_async_on, db.is_parameterization_forced
, db.snapshot_isolation_state_desc, db.is_read_committed_snapshot_on
FROM sys.databases AS db
INNER JOIN sys.dm_os_performance_counters AS lu
ON db.name = lu.instance_name
INNER JOIN sys.dm_os_performance_counters AS ls
ON db.name = ls.instance_name
WHERE lu.counter_name LIKE N'Log File(s) Used Size (KB)%'
AND ls.counter_name LIKE N'Log File(s) Size (KB)%'
AND ls.cntr_value > 0
OPTION (RECOMPILE);
Transaction Log Truncation opisuje zarówno kiedy, jak i dlaczego występuje obcinanie dziennika.
Jeśli rekordy dziennika nigdy nie zostaną usunięte z dziennika transakcji, ostatecznie zapełni całe miejsce na dysku dostępne dla fizycznych plików dziennika. Obcinanie dziennika automatycznie zwalnia miejsce w dzienniku logicznym do ponownego wykorzystania przez dziennik transakcji.
Czynniki, które mogą opóźnić Obcinanie dziennika jest przydatnym źródłem informacji, które pozwala zrozumieć, dlaczego dziennik może nie zostać obcięty, a zatem może być większy niż oczekiwano.