backup log is terminating abnormally because for write on file failed: 112(error not found)
2016-11-24 11:16 潇湘隐者 阅读(795) 评论(0) 编辑 收藏 举报昨天遇到一个案例,YourSQLDba做事务日志备份时失败,检查YourSQLDba输出的错误信息如下:
<Exec>
<ctx>yMaint.backups</ctx>
<Sql>
backup log [gewem]
to disk = 'M:\DB_BACKUP\LOG_BACKUP\xxxx_[2016-11-22_01h11m05_Tue]_logs.TRN'
with noInit, checksum, name = 'YourSQLDba:16h16: M:\DB_BACKUP\LOG_BACKUP\xxxx_[2016-11-22_01h11m05_Tue]_logs.TRN'
</Sql>
<err>Error 3202, Severity 16, level 2 : Write on "M:\DB_BACKUP\LOG_BACKUP\xxxx_[2016-11-22_01h11m05_Tue]_logs.TRN" failed: 112(error not found)
Error 3013, Severity 16, level 1 : BACKUP LOG is terminating abnormally.
</err>
</Exec>
这个“failed :112”信息一出现,意味着肯定是磁盘空间不够,昨天总结的那篇博客DBCC CHECKDB 遭遇Operating system error 112(failed to retrieve text for this error. Reason: 15105) encountered其实遇到的问题也是类似的,Operating System error 112 meaning There is not enough space on the disk.
当时检查时,发现磁盘空间还剩下十多G,然后自己手工又将代码取出,手工执行测试,依然报这个错误:
backup log [xxxx]
to disk = 'M:\DB_BACKUP\LOG_BACKUP\xxxx_[2016-11-22_01h11m05_Tue]_logs.TRN'
with noInit, checksum,
NAME = 'YourSQLDba:00h10: M:\DB_BACKUP\LOG_BACKUP\xxxx_[2016-11-22_01h11m05_Tue]_logs.TRN'
后面检查发现这个数据库的日志文件暴增,已经超过数据文件的大小。如下截图所示,所以即使磁盘空间还有不少(19G),部署的磁盘空间告警作业亦正常,没有出现告警,但是已经不能足够支撑事务日志备份完成。所以出现了这个问题,问题有点隐蔽,不过只要细心,问题真相就能水落石出。剔除几个老旧备份以及已经上带的备份,腾出了一些磁盘空间,重新运行作业,作业执行成功!

· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库