相关疑难解决方法(0)

为什么事务日志不断增长或空间不足?

这个问题在大多数论坛和整个网络中似乎是一个常见问题,这里以多种格式提出,通常听起来像这样:

在 SQL Server 中 -

  • 事务日志变得如此之大的一些原因是什么?
  • 为什么我的日志文件这么大?
  • 有什么方法可以防止这个问题的发生?
  • 当我找到根本原因并希望将我的事务日志文件调整到正常大小时,我该怎么办?

sql-server shrink transaction-log auto-growth recovery-model

283
推荐指数
4
解决办法
32万
查看次数

为什么我不能在完全恢复模式下缩小日志文件

我有一个 302MB 的日志文件。

我做了一个日志备份,它使日志文件大部分都是免费的(我可以通过磁盘使用标准报告看到这一点)

如果我试着跑

DBCC SHRINKFILE (N'AdventureWorks2014_Log' , 0, TRUNCATEONLY)
Run Code Online (Sandbox Code Playgroud)

或者

DBCC SHRINKFILE (N'AdventureWorks2014_Log' , 0)
Run Code Online (Sandbox Code Playgroud)

该文件仍显示为 302MB。

我知道我可以将数据库更改为简单恢复,然后运行上述命令之一并设置回完全恢复(然后进行完全备份以确保数据库未处于伪简单恢复模式

但是,为什么我不能在完全恢复模式下缩小文件?

我知道收缩不是你应该做的事情,但在我现实世界的数据库中,因为没有人备份过它已经增长到 30GB 的事务日志,现在已经实施了定期日志备份以防止这个级别的增长

sql-server shrink transaction-log recovery-model

7
推荐指数
2
解决办法
2万
查看次数