Резервные копии журнала транзакций SQL Server и размер файла журнала - PullRequest
0 голосов
/ 30 января 2019

Мы используем SQL Server 2012 (SP2), работающий в режиме полного восстановления.Мы берем полчаса резервные копии журнала транзакцийНаш размер БД составляет 20 ГБ.Каждую ночь мы выполняем задачи обслуживания БД - полное резервное копирование, восстановление некоторых индексов, обновление статистики, очистка некоторых старых данных.Получасовые резервные копии журнала транзакций сохраняются на внешнем жестком диске.Наш LDF-файл журнала транзакций постоянно увеличивается до 13 ГБ.Файлы .trn резервных копий журнала транзакций составляют около 20-30 МБ (в зависимости от активности БД, конечно), но тот, который сразу после задач ночного обслуживания составляет 13 ГБ.Насколько я понимаю, LDF-файл журнала транзакций будет автоматически уменьшен до 0 сразу после резервного копирования журнала транзакций.Тем не менее, кажется, что он расширяется до максимального размера, который ему нужен, и остается таким же.

Это нормально?Это проблема?Есть ли способ автоматически уменьшить его до 0 после резервного копирования журнала транзакций?(Я знаю, как уменьшить его вручную).

Спасибо, Джон W

1 Ответ

0 голосов
/ 30 января 2019

тот, что сразу после задач ночного обслуживания, составляет 13 ГБ.

Когда вы выполняете index rebuild в full модели, размер вашей log fil e увеличивается как минимум доразмер этого index.Когда вы rebuild 13 ГБ индексов, все 13 ГБ идут в файл журнала.Это связано с тем, что каждая страница нового индекса записывается в журнал как есть.

Насколько я понимаю, LDF-файл журнала транзакций автоматически сокращается до 0 сразу после резервного копирования журнала транзакций

Это неправильно.Log backup не выполняет shrink, т. Е. Размер log file не изменяется после log backup.

Log truncation, с которыми log backup perfoms не имеет ничего общегоразмер файла журнала.Это только означает, что некоторая часть log file больше не сохраняется и может быть перезаписана новыми записями журнала.

...