我有一个 SQL Server 2008 标准版。服务器上已在完全安全模式下设置镜像。到今天为止,它一直运行良好。事务日志备份每次都失败并出现错误
Error: 2014-09-25 08:34:33.17 Code: 0xC002F210 Source: JuneDB Log Backup Execute SQL Task
Description: Executing the query "BACKUP LOG [JuneDB] TO DISK = N'H:\BKs\Hou..." failed with the following error: "Read on "E:\LDFs\JuneDB.ldf" failed: 1(Incorrect function.)
BACKUP LOG is terminating abnormally.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly
- 我正在使用维护计划进行备份。
- 该驱动器还包含其他 5 个数据库的日志文件,并且它们的日志备份良好。
- 成功完成重建索引维护计划后出现了该问题。
- 完整备份没有任何问题。
我无法确定为什么读取这个数据库的日志文件会出错。我该如何处理这个问题。
我尝试过的事情
- Ran
DBCC CHECKDB([JuneDB]) WITH NO_INFOMSGS
没有返回任何错误消息 - 运行查询以进行事务备份,而不是使用维护计划。它给出了同样的错误
更新我刚刚注意到,我们在凌晨 4:30 运行了一项维护计划来重建所有索引。查看错误日志,我在凌晨 4:30 之后开始收到事务日志备份错误。我不确定重建索引如何可能导致事务日志备份失败,但它们肯定是相关的
答案1
感谢大家对此做出回应并帮助我。结果发现是日志文件损坏。以下步骤解决了我的问题
- 停止镜像
- 将数据库切换到简单恢复模式
- 执行检查点(只要没有其他操作需要保持日志处于活动状态,就应该清除活动日志)
- 切换回完整恢复模式
- 通过执行完整备份重新建立日志备份链
- 开始镜像
http://sqlmag.com/blog/transaction-log-corruption-and-backups