Некоторые способы очистки и уменьшения размера журнала транзакций в SQL Server:
- Через консоль SQL Server Management Studio (SSMS). 3 Нужно запустить консоль, выбрать нужную базу данных и открыть её свойства в контекстном меню. 3 Затем перейти на вкладку Options и изменить модель восстановления БД на Simple. 3 После этого в контекстном меню БД выбрать Tasks -> Shrink -> Files. 3 В поле File type выбрать Log, а в поле File name — имя файла логов. 3 В поле Shrink action указать Reorganize pages before releasing unused space, указать, до какого размера нужно ужать файл, и нажать OK. 3 После урезания лога нужно снова переключиться на полную модель восстановления БД. 3
- С помощью скрипта T-SQL. 1 Нужно перевести базу данных MS SQL в простой режим восстановления и сжать файл журнала с помощью скрипта. 1 Например, для сжатия файла журнала до 4 ГБ (4096 МБ) используется команда: DBCC SHRINKFILE(MyDatabase_Log, 4096). 1
- Для небольших баз данных в режиме полного восстановления. 1 Можно включить опцию «Автосжатие» в свойствах базы данных MS SQL. 1 Для этого нужно перейти в «Опции БД» и установить значение параметра Auto Shrink в разделе «Автоматическое» на True. 1 После включения автоматического сжатия MS SQL будет выполнять его только если незанятое пространство составляет более 25% от общего размера тома. 1
После уменьшения размера журнала транзакций в SQL Server рекомендуется создать полную резервную копию базы данных, так как в случае повреждения файлов журнала нельзя будет восстановить базу с использованием файлов транзакций. 3