几分钟前,我的 prod 数据库遇到了一个奇怪的情况。我有带简单恢复模型的 db X。SCOM 提醒我日志磁盘空间不足。然后我检查了磁盘,发现 db X 的日志文件是 11 Gb,尽管数据文件是 300 Mb 并且恢复模型很简单。
然后我检查了DBCC OPENTRAN但没有打开的事务,无论是在数据库上还是在服务器上。
然后我尝试缩小日志文件,但是它说没有空的空间。我检查了log_reuse_wait_type列,它是LOG_BACKUP。我知道,根据定义,应该不可能看到使用 SIMPLE 恢复模型的数据库的等待类型,但确实存在。我仔细检查了上面提到的所有步骤,没有任何改变。然后我将 db X 的恢复模型更改为 FULL 并将其设置回 SIMPLE。之后log_reuse_wait_type报告为NOTHING。
最后我解决了问题,但仍然想知道为什么会这样。有没有人遇到过类似的问题?
你运行的是 SQL Server 2012 吗?您的模型数据库是否处于 SIMPLE 恢复模型中?你的补丁有点落后了吗?
这似乎是之前问这个问题的问题,在SQL Server 2012 Simple Recovery Model with LOG_BACKUP log_reuse_wait_desc
在构成SQL Server 2012 CU7 / SQL Server 2012 SP1 CU 4 一部分的KB2830400中已修复