mssql日志清理:缩减磁盘占用(mssql 清除LOG)

MSSQL日志清理一直以来都是数据库管理者最令人头痛的一部分,特别是像磁盘空间这样的有限资源。特别是当MSSQL数据库中的日志文件自动扩展放大时,可能会由于磁盘空间缺乏而导致运行缓慢。能够定期的进行MSSQL日志清理,可以使MSSQL服务器突出性能。

MSSQL日志清理可以分为几种方式:

(1)缩减日志文件:当日志文件空间占用过多时,可以使用MSSQL官方提供的DBCC SHRINKFILE函数对日志文件进行缩减。这是个长期清理文件的办法,这样可以确保日志文件的体积与活动的事务稀释,这其中的一个MERGE语句如下:

DBCC SHRINKFILE (‘.LDF’,TRUNCATEONLY)

(2)清理事务日志:可以使用MSSQL官方提供的BACKUP LOG 命令来指定清理事务日志的级别,如果指定清理每日日志,比如每天结束时都清除日志记录,可以按照以下步骤:

(a) 找到MSSQL服务器控制台,选择备份数据库菜单;

(b) 选择磁盘备份;

(c) 在备份选项中填写备份文件名,并选择“备份事务日志”(建议在“类型”选择“完整”);

(d) 点击确定进行备份,完成后清理完毕。

(3)DBCC FREESYSTEMCACHE命令:使用这一命令可以释放系统缓存中所占用的内存,一般在跨库查询时需要使用这一命令才能获得及时的查询结果。

虽然经常的MSSQL日志清理可以节省磁盘空间,但是有时候会因为使用不当造成后果,比如备份事务日志,必须在关闭MSSQL服务器之后才能执行,不然可能会因为程序提前停止而无法备份,从而造成不可挽回的损失。


数据运维技术 » mssql日志清理:缩减磁盘占用(mssql 清除LOG)