always on收缩日志

always on收缩日志

成功搭建always on 后日志收缩的方法:

use test
go
declare @bakfile nvarchar(200) –@bakfile备份文件名
set @bakfile=‘C:\DBBackup\testlog_bak_’+convert(nvarchar(8),getdate(),112)+’.log’
BACKUP LOG test TO DISK= @bakfile WITH RETAINDAYS= 1,COMPRESSION
dbcc shrinkfile(test_Log,100) –100为希望日志收缩到的MB数
go

备份事务日志是为了截断事务日志,从而可以收缩日志。

如日志收缩不成功
select log_reuse_wait_desc from sys.databases where name=‘test’;
查询数据库状态:replication,active transaction,mirror,backup log 的无法备份,为NOTHING 的可以收缩成功。

如状态是replication,可能是cdc导致的。使用下面的方法收缩日志。
链接:https://blog.csdn.net/zhupengfei/article/details/107223900

在此方法下的第一步:取消主从同步后,主服务器上数据库如还是replication,需要处理此状态。在取消主从同步的状态下 处理此状态,处理方式,可参考我的另一篇文章:
链接:https://blog.csdn.net/weixin_43599216/article/details/110374003?spm=1001.2014.3001.5501

    原文作者:weixin_43599216
    原文地址: https://blog.csdn.net/weixin_43599216/article/details/115733906
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞