MSSQL 2014数据库Alwayson下日志过大,压缩日志的处理方法


USE [{数据库名称}] DECLARE @bakfile nvarchar(100) SET @bakfile='E:\DbLogs\log_bak_'+CONVERT(nvarchar(8),GETDATE(),112)+'.log' --备份日志压缩文件路径 BACKUP LOG [{数据库名称}] TO DISK= @bakfile WITH RETAINDAYS= 1,COMPRESSION --备份日志 DBCC SHRINKFILE (N'{数据库日志文件逻辑名称}', 0) GO
为了做数据库读写分离,做了故障转移群集,以及通过Alwayson做数据库同步,但也造成了数据库日志文件不断增加,通过以前的方法处理也会出错

 

也找了不少方法,都解决无效,最后看到通过截断日志可以解决此问题。

USE [StarDB]
DECLARE @bakfile nvarchar(100)
SET @bakfile='E:\DbLogs\log_bak_'+CONVERT(nvarchar(8),GETDATE(),112)+'.log'
BACKUP LOG [StarDB]  TO DISK= @bakfile WITH RETAINDAYS= 1,COMPRESSION
DBCC SHRINKFILE (N'StarDB_log', 0)
GO

 

开始执行了,没有发现效果,但过了一会,日志明显减小了,若日志太大,建议多执行几次。
 

来源:https://www.iwmyx.cn/mssql2014sjkalwaysonx.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM