数据库恢复和日志文件阐述

  • 恢复模式简述以下:
    • 简单恢复模式:能够理解为在这种模式下Sql Server不记录日志(并非真的不记录任何日志)。在这种模式下Sql Server会截断非活动日志,而且没法备份日志也不容许备份日志。所以在这种恢复模式下就不可能任意的将数据库还原到某个时间点了。只能作彻底备份、增量备份来备份某个时刻的数据。
    • 彻底恢复模式:在彻底恢复模式下,必需要有一个彻底备份和一系列的日志备份来进行时点还原,要否则就失去彻底恢复模式的意义了。
    • 大批量恢复模式:和彻底模式基本相同,可是优化了部分大批量操做的日志记录,可是须要在作备份时付出相应的代价,在这里不作讨论。
  • 数据库的日志文件会记录全部的事务日志,可是若是在简单恢复模式下,或者不在简单恢复模式下可是没有对数据库作过彻底备份,那么Sql Server不会长久的保存日志,Sql Server会对日志进行截断,也就是说丢弃之前的日志记录,可是会保留活动日志。
  • 在彻底恢复模式下,若是没有进行过完整备份而且数据库的日志空间使用率高于70%,那么Sql Server只要要可能就会进行日志截断。
  • Sql Server的日志会被划分为一些虚拟日志,当一个虚拟日志使用完后再使用下一个虚拟日志。Sql Server在截断日志时会以虚拟日志为单位来进行截断,被截断的日志能够被从新使用。可是截断日志不会减小日志的物理空间,只会把已满的虚拟日志从新标记为可用状态。
  • 在完整恢复模式(已作过彻底备份)下,若是不进行任何日志备份,那么日志文件会一直增加,Sql Server不会去主动截断日志。咱们能够按期备份日志,从而让日志空间得以重复里面,避免日志增加过大。

在简单恢复模式下,虽然不记录事务日志(可是并非真的不记录任何日志),若是日志空间够用,因为日志截断,会重复利用截断的空间,只有不够用的状况下,会再分配空间,形成日志文件增加。web

相关文章
相关标签/搜索