zoukankan      html  css  js  c++  java
  • SQLServer的三种Recovery Model

    SQL Server恢复模式的三种类型的比较

    此文章主要向大家讲述的是SQL Server恢复模式,我们主要介绍的是三种恢复模式,其中包括简单SQL Server数据库的恢复模式、完整恢复模式与大容量日志的正确恢复模式。以下就是文章的主要内容讲述。

    恢复模式(Recovery Model)旨在控制事务日志维护。恢复模式说明了工作丢失的风险,能否恢复到时点?


    SQL Server数据库有三种恢复模式:简单SQL Server恢复模式、完整恢复模式和大容量日志恢复模式。

    相对于简单恢复模式而言,完整恢复模式和大容量日志恢复模式提供了更强的数据保护功能。这些恢复模式都是基于备份事务日志来提供完整的可恢复性及在最大范围的故障情形内防止丢失工作。通常,数据库使用完整恢复模式或简单SQL Server恢复模式。

    下面对三种恢复模式做一个比较:

    恢复模式

    日志备份


    恢复点


    优点


    缺点


    解决方案及建议

    简单(Simple)


    无日志备份。


    自动回收日志空间以减少空间需求,实际上不再需要管理事务日志空间。

    最新备份之后的更改不受保护。在发生灾难时,这些更改必须重做。只能恢复到备份的结尾。


    简单恢复模式可最大程度地减少事务日志的管理开销,因为不备份事务日志。


    如果数据库损坏,则简单SQL Server恢复模式将面临极大的工作丢失风险。数据只能恢复到已丢失数据的最新备份。


    在简单恢复模式下,备份间隔应尽可能短,以防止大量丢失数据。简单恢复模式并不适合生产系统,因为对生产系统而言,丢失最新的更改是无法接受的。在这种情况下,我们建议使用完整恢复模式。

    完整(Full)


    需要日志备份。


    理论上可以恢复到任意时点。


    数据文件丢失或损坏不会导致丢失工作。


    此模式完整记录所有事务,占用大量空间。

    大容量(Bulk-logged)


    需要日志备份。


    如果在最新日志备份后发生日志损坏或执行大容量日志记录操作,则必须重做自该上次备份之后所做的更改。 可以恢复到任何备份的结尾。不支持时点恢复。

    该模式是完整SQL Server恢复模式的附加模式,允许执行高性能的大容量复制操作。通过使用最小方式记录大多数大容量操作,减少日志空间使用量。


    比完整模式节省日志存储空间。


    对于某些大规模大容量操作(如大容量导入或索引创建),暂时切换到大容量日志恢复模式可提高性能并减少日志空间使用量。由于大容量日志恢复模式不支持时点恢复源码天空,因此必须在增大日志备份与增加工作丢失风险之间进行权衡。


    注意:


    1. 适合于数据库的恢复模式取决于数据库的可用性和恢复要求。


    2. 在完整恢复模式和大容量日志SQL Server恢复模式下,必须进行日志备份。如果不想进行日志备份,则请使用简单恢复模式。

    详细请参考:http://www.codesky.net/article/201007/145522.html

  • 相关阅读:
    《JavaScript高级程序设计》读书笔记 ---Object 类型
    《JavaScript高级程序设计》读书笔记 ---变量、作用域和内存问题小结
    《JavaScript高级程序设计》读书笔记 ---执行环境及作用域
    《JavaScript高级程序设计》读书笔记 ---基本类型和引用类型的值
    《JavaScript高级程序设计》读书笔记 ---函数
    《JavaScript高级程序设计》读书笔记 ---基本概念小结
    《JavaScript高级程序设计》读书笔记 ---语句
    《JavaScript高级程序设计》读书笔记 ---if语句
    Vue2.0组件间数据传递
    UIButton快速点击,只执行最后一次
  • 原文地址:https://www.cnblogs.com/shuzehui/p/3534910.html
Copyright © 2011-2022 走看看