Sql Server 2017-无法收缩事务日志文件,被LOG_BACKUP状态阻止

Sql Server 2017-无法收缩事务日志文件,被LOG_BACKUP状态阻止

上周,我的 SQL Server 2017 实例(在 Windows Server 2016 上运行)空间不足,190GB 的事务日志文件完全占满了磁盘。

幸运的是,这是在云实例上,所以我快速卸载了磁盘,将其额外增加了 200GB 左右,然后重新安装并格式化未使用的空间。

但是我仍然有这个巨大的 190GB 日志文件。没有设置日志备份。所以我手动备份了事务日志。然后我运行了磁盘使用情况报告,幸运的是,它显示 95% 的事务日志空间未使用:

在此处输入图片描述

但是,日志文件本身仍然有 190GB。经过一番研究,有人建议我缩小日志文件,因为我刚刚通过备份清除了其中的大部分数据。所以我尝试缩小它,它处理了几秒钟,然后缩小实用程序窗口关闭了,没有任何错误。但是,日志文件仍然有 190GB。

我查询了数据库的 log_reuse_wait_desc,结果返回了“LOG_BACKUP”。这个状态显然意味着在缩小事务日志文件之前,我必须进行备份,但是我刚刚进行了备份?

我被困在这一点上,我希望有一个较小的日志事务文件(例如 10-20GB),并且我希望自动备份日志,要么定期备份,使其不超过 10-20GB,要么自动什么时候该文件大小达到10-20GB。

除了简单地运行备份(因为我已经这样做了)之外,是否有人知道如何处理 LOG_BACKUP 状态阻止我缩小文件的能力?

以下是我的数据库的 dm_db_log_stats: 在此处输入图片描述

您会注意到我的总 vlf 数量巨大(1097),而我的活动 vls 数量较少(300),但我不确定这意味着什么。

相关内容