zoukankan      html  css  js  c++  java
  • 事务日志备份失败错误:Backup detected log corruption in database

    【1】错误信息

    Backup detected log corruption in database FakeDBName. Context is FirstSector. LogFile: 2 ‘F:SQLLOGSXYZFakeDBName_Log.ldf’ 
    VLF SeqNo: x502e VLFBase: x2ce40000 LogBlockOffset: x2d0a9000 SectorStatus: 2 LogBlock.StartLsn.SeqNo: x4ee3 LogBlock.StartLsn.Blk: x1348 Size: x200 PrevSize: x400 2009-03-06 10:00:02.61 Backup Error: 3041, Severity: 16, State: 1. 2009-03-06 10:00:02.61 Backup BACKUP failed to complete the command BACKUP LOG FakeDBName Check the backup application log for detailed messages. 2009-03-06 10:00:03.61 Backup Error: 3041, Severity: 16, State: 1.

    【2】原因分析

    1. 日志备份时,需要备份自上一次日志备份以来的整个日志链。日志链中的任何log corruption都会报错,并导致日志备份失败。

    2. 为何完整备份没有报错呢?因为完整备份只需要少量的事务日志。

    【3】解决思路

    SQL Server 没有重建事务日志链的工具和直接方法。建议重建事务日志链:

    1. 停止该数据库所有的事务;

    2. 执行完整备份;

    3. 将数据库的恢复模式改为“简单”,此步骤将删除原来的事务日志链。如有大量缓冲区的数据未回写硬盘,请执行 checkpoint。如有必要,可收缩事务日志文件。

    4. 再将数据库的恢复模式改回“完整”;

    5. 执行完整备份,此步骤将重建事务日志链;

    6. 可继续执行事务日志备份。

    转自:https://blog.51cto.com/jimshu/1970418

  • 相关阅读:
    [转]AJAX POST请求中参数以form data和request payload形式在servlet中的获取方式
    C#文档注释
    VS 单元测试项目,测试的时候运行按钮不可用
    获取泛型类的Type
    Sql 复习(4)
    Sql 复习(3)
    sqlserver的soundex
    sqlserver的trim
    Sql 复习(2)
    糟糕的设计
  • 原文地址:https://www.cnblogs.com/gered/p/12519201.html
Copyright © 2011-2022 走看看