zoukankan      html  css  js  c++  java
  • 日志传送是否可以与普通事务日志备份并存

    2016-03-18 15:18 整理,未发布
    日志传送实际是备份日志、拷贝日志、还原日志。我们可以将备份好的日志文件拷贝一份到其他存储,再结合必要的完整备份,就可以用来还原数据。
    如果做了日志传送,还需对其做普通的日志备份。那就要考虑清楚,普通的日志备份不能截断事务日志,不然日志传送中的日志链就会中断。
    如果普通的事务日志带上with copy_only选项,它不会截断日志
    BACKUP LOG WITH COPY_ONLY --1 带COPY_ONLY日志备份
    BACKUP LOG --2 日志传送
    BACKUP LOG WITH COPY_ONLY --3 带COPY_ONLY日志备份
    第2步lastlsn=第3步的firstlsn,也就是要第3步的文件需在第2步的文件上才能还原
    如果没有类似第2步的普通日志备份,那backup log with copy_only类似差异备份,备份保存自上次日志备份(有截断日志)以来所有的变更。只要没有截断(完整/差异备份不会影响),日志备份(copy_only)文件越来越大。
    因此在日志传送和日志备份(copy_only)并存的情况下,还原顺序应该是:最近的完整备份+最近的完整备份与最近的日志备份(copy_only)之间的日志传送所生成的日志备份+最近的日志备份(copy_only)。
    --判断某日志备份是否能应用到当前正在还原的 DB上

    --判断某日志备份是否能应用到当前正在还原的 DB上
    USE master ;
    GO
    DECLARE @MyBitVar BIT;
    EXEC sp_can_tlog_be_applied
         @backup_file_name = N'D:logbak_log_copy5.bak' ,
         @database_name = N'logbakre',
         @result = @MyBitVar OUTPUT;
    SELECT @MyBitVar
    GO
  • 相关阅读:
    python之os模块分类整理
    MySql的四种事务隔离级别
    Ajax异步请求XMLHttpRequest对象Get请求
    经典mssql语句大全
    Repeater 无刷新分页
    关于编写性能高效的javascript事件的技术
    ASP.NET页面之间数据传递的几种方法
    MSSQL常用函数大全
    .net-一般处理程序及生命周期
    请求管道中的19个事件
  • 原文地址:https://www.cnblogs.com/Uest/p/5292246.html
Copyright © 2011-2022 走看看