mssql 优雅清除日志,节省磁盘空间(mssql 清除LOG)

mssql优雅清除日志节省磁盘空间

随着使用的数据库记录增加,日志文件也会相应增加。对于容量有限的磁盘,我们需要及时清理日志文件以便释放机器磁盘空间。

mssql提供了一种更加优雅的清理日志文件方式–log_reuse_wait_desc服务属性,使用log_reuse_wait_desc可以实现在未备份故障迁移组件日志文件的情况下,清除过期的日志文件,释放磁盘空间。

如何优雅的清除mssql日志呢?首先打开SQLServer的管理界面,找到实例名,然后点击属性选项,在此界面中查看数据库的状态,可以看到Log_reuse_wait_desc参数的设置。

默认情况下,mssql中的 Log_reuse_wait_desc 被设置为非常保守的NOTHING,即不允许删除任何日志文件,所以针对此问题可以将 Log_reuse_wait_desc 改为允许删除日志文件,即允许 LOG_BACKUP,LOG_CHECKPOINT 。

修改 Log_reuse_wait_desc 服务属性如下:

excec sp_configure ‘show advanced options’,1

go

excec sp_configure ‘log_reuse_wait_desc’, ‘LOG_BACKUP,LOG_CHECKPOINT’

go

reconfigure

然后,让我们的数据库开始删除多余的日志文件吧!关闭管理控制台,打开cmd客户端,输入以下命令:

sqlcmd -E -Q “BACKUP log mydatabase TO DISK=N’D:\path\log_%date%.bak’ “

可以进行日志备份,这样便可以提供更多的有价值的磁盘空间,备份完成后,即可清除备份后的旧数据文件。

到此,我们就完成了mssql优雅清理日志文件,节省磁盘空间操作。此方式不仅仅节省磁盘空间,还能保护数据库的安全性。采用优雅的清理方式,让基于mssql的数据库运行更加的稳定和安全!


数据运维技术 » mssql 优雅清除日志,节省磁盘空间(mssql 清除LOG)