MSSQL 清理LOG文件:一个必要的步骤(mssql 清除LOG)

2023-10-26 11:28:17 步骤 清理 清除

MS SQL 清理LOG文件作为数据库系统必要的步骤,是获取数据库服务器资源最有效的方法之一。如果日志文件不被处理,就可能会使数据库系统备份和恢复受到影响,导致整个数据库无法工作,甚至造成灾难,所以清理LOG文件是一个系统管理员极其重要的一件事。

MS SQL 实现清理LOG文件的方法可能有多种,但建议的方法如下:

1、首先,可以在SQL管理中心的Management > Maintenance Plans中,点击“clean up history”,然后在页面上勾选“ Clean up Backups”旁边的“Clean up Transaction Logs”。这样就可以定期清理Transaction Logs。

2、SQL命令行语句。使用SQL管理中心新建Query窗口,输入以下代码来手动清理log文件:

USE AdventureWorks2012; 
GO

-- Back up the log before you shrink it.
BACKUP LOG AdventureWorks2012
TO DISK = 'M:AdventureWorksAdventureWorks_LogBackup.bak'
GO
-- Shrink the log file to 1 MB.
DBCC SHRINKFILE (AdventureWorks_Log, 1)
GO

3、最后,可以考虑在SQL脚本中实现定期清理log文件,这样就不用人工手动清理了。可以输入以下代码:

USE master; 
GO

-- Create a job
EXEC sp_add_job @job_name='Backup the log file'
GO

-- Create a job step
EXEC sp_add_jobstep @job_name='Backup the log file', @step_name='Backup the log file',
@subsystem='TSQL',
@command=N'BACKUP LOG [AdventureWorks] TO DISK=''M:AdventureWorksBackupLog.bak'''
GO

--Create job schedule
EXEC sp_add_jobschedule @job_name='Backup the log file',
@name='WeeklyJobSchedule',
@freq_type=4,
@freq_interval=7,
@active_start_date=20180924,
@active_start_time=0
GO
-- Activate the job
EXEC sp_add_jobserver @job_name='Backup the log file',
@server_name='(local)'
GO

因此,在MS SQL中定期清理映射文件是非常必要的,可以有效的维护数据库,保证安全和性能。

相关文章