Назад | Перейти на главную страницу

Файл журнала SQL быстро растет

Я обнаружил, что файл журнала базы данных SQL быстро увеличивался и заполнял пространство жесткого диска, рост составлял примерно 190 МБ в день.

на сервере работает Sharepoint, как я могу проверить, что вызывает увеличение размера файлов журнала? могло это из-за запланированного обхода точек доступа и резервного копирования БД?

Я намерен уменьшить некоторые файлы журнала (например, файл журнала сервера отчетов), как я могу определить, что эти файлы журнала не будут иметь никаких побочных эффектов после сжатия?

Можете ли вы поделиться результатами ниже? Вы регулярно делаете резервные копии журналов транзакций?

select name, log_reuse_wait_desc from sys.databases

DBCC OPENTRAN()

Вам необходимо правильно настроить размер журналов транзакций, чтобы не запускалось автоматическое увеличение, и частое их сжатие НЕ является хорошей идеей.

РЕДАКТИРОВАТЬ: код на основе ваших комментариев, чтобы проверить, какие файлы журналов выросли в последнее время.

DECLARE @filename VARCHAR(255) 
SELECT @FileName = SUBSTRING(path, 0, LEN(path)-CHARINDEX('\', REVERSE(path))+1) + '\Log.trc'  
FROM sys.traces   
WHERE is_default = 1;  

--Check if the data and log files auto-growed. Look for tempdb, log files etc.
SELECT 
    gt.ServerName
    , gt.DatabaseName
    , gt.TextData
    , gt.StartTime
    , gt.Success
    , gt.HostName
    , gt.NTUserName
    , gt.NTDomainName
    , gt.ApplicationName
    , gt.LoginName
FROM [fn_trace_gettable](@filename, DEFAULT) gt 
JOIN sys.trace_events te ON gt.EventClass = te.trace_event_id 
WHERE EventClass in ( 92, 93 ) --'Data File Auto Grow', 'Log File Auto Grow'
ORDER BY StartTime;