MSSQL日志增大:超快速体验(mssql日志增大速度快)

MSSQL日志增大是一个常见的让数据库管理人员困惑的问题.日志文件主要用于记录MSSQL事务中的更改操作,一旦你的MSSQL日志停止自动释放,MSSQL就会继续记录这些更改,最终导致日志文件越来越大。

在我这种情况下,我遇到了MSSQL日志文件被清理过程非常缓慢的问题.我使用了以下代码快速释放日志文件:

Backup log XXX with truncate_only

go

DBCC SHRINKFILE (N’XXX_log’, 1)

GO

上面的第一行代码可以使事务日志文件“XXX_Log”被成功备份,第二行代码可以缩减事务日志的文件大小,缩减的容量可以不断减小,最终让事务日志的文件变得更轻。

另外,我将日志缩减操作添加到MSSQL定时任务中,设置一个每日午夜运行一次,以便定期清理日志文件。为此,我使用以下SQL语句:

EXEC sp_add_job

@job_name = ‘Daily_ShrinkLog’,

@description = ‘Clean MSSQL Log files’,

@category_name = ‘Maintenance’,

@enabled = 1

EXEC sp_add_jobstep

@job_name = ‘Daily_ShrinkLog’,

@step_name = ‘Shrink Logs’,

@subsystem = ‘TSQL’,

@command = ‘Backup log XXX with truncate_only

go

DBCC SHRINKFILE (N’XXX_log’, 1)

GO’,

@retry_attempts = 4,

@retry_interval = 5

EXEC sp_add_jobschedule

@job_name = ‘Daily_ShrinkLog’,

@name = ‘Daily_ShrinkLog_Sched’,

@freq_type = 4,

@freq_interval = 1,

@freq_subday_type = 8,

@freq_subday_interval = 0,

@freq_recurrence_factor = 1,

@active_start_date = 20120605,

@active_end_date = 99991231,

@active_start_time = 0,

@active_end_time = 235959

通过以上方法,MSSQL数据库管理员可以快速处理MSSQL日志增大的问题,而无需重新安装SQL Server和删除事务日志文件。


数据运维技术 » MSSQL日志增大:超快速体验(mssql日志增大速度快)