zoukankan      html  css  js  c++  java
  • 查看SQL Server备份后的日志(转载)

    Part1中我们提到可以用fn_dblog查看Active的Log,但是如果Log被备份以后我们还可以查看吗?
    
      
    
    答案是可以的,使用fn_dump_dblog。
    
     
    
    下面是我自己做的测试:
    
      
    
    1.  --insert data to table
    
     INSERT INTO ProdTable2DEFAULTVALUES;
    
     GO 1000
    
     
    
    2.   ---查询Log信息
    
     select * from fn_dblog(null,null)whereOperation='LOP_INSERT_ROWS'
    
    查到100条记录。
    
    
    
    3.  --备份Log
    
    backup log FNDBLogTesttodisk='d:mssqlFNDBLogTest.trn'
    
     
    
    4.  ---查询Log信息
    
     select * from fn_dblog(null,null)whereOperation='LOP_INSERT_ROWS'
    
    (0 row(s) affected)
    
    可以看到Log已经被备份了,没有Active的Log存在,所以fn_dblog没有返回任何信息。
    
    我们用下面的语句在查一下:
    
    5.  –从备份Log查询:
    
    SELECT * FROMfn_dump_dblog(
    
         NULL, NULL,'DISK', 1,'d:mssqlFNDBLogTest.trn',
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,
    
         DEFAULT, DEFAULT, DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT)
    
         whereOperation ='LOP_INSERT_ROWS'
    
     GO
    
    查询结果显示1000记录:
    
       
    
    比对一下查询结果跟日志备份前fn_dblog的查询结果相同。
    
     
    
    注意:需要指定63个默认NULL参数,否则无法返回数据。前5个参数含义如下:
    
     
    
    1.  开始LSN
    
    2.  结束LSN
    
    3.  备份文件类型(disk或者Type)
    
    4.  备份文件顺序号(假设多个备份到同一个文件)
    
    5.  备份文件名
    
     
    
    更详细的信息可以参考Paul在SQLSkill上的文章(Using fn_dblog, fn_dump_dblog, and restoring with STOPBEFOREMARK to an LSN)

    https://blog.csdn.net/kevinsqlserver/article/details/7817540

  • 相关阅读:
    SQL Server 的事务和锁(一)
    Sql server脏读、更新丢失、不可重复读、幻象读问题及解决方案
    Sql server锁机制
    Windows系统变量列表
    windows运行命令大全
    C# 捕获数据库自定义异常
    sql日期函数
    C# ado.net 操作存储过程(二)
    C# ado.net 操作(一)
    url传参特殊字符问题(+、%、#等)
  • 原文地址:https://www.cnblogs.com/iwana/p/13395475.html
Copyright © 2011-2022 走看看