签到成功

知道了

CNDBA社区CNDBA社区

SQL Server 三种数据恢复模式 说明

2020-02-2 09:46: 4574 0 原创 SQLServer
作者: dave

恢复模式旨在控制事务日志维护。 “恢复模式” 是一种数据库属性,它控制如何记录事务,事务日志是否需要(以及允许)进行备份,以及可以使用哪些类型的还原操作。 有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。 通常,数据库使用完整恢复模式或简单恢复模式。 数据库可以随时切换为其他恢复模式。

http://www.cndba.cn/dave/article/4494

1 完全恢复模型

如果数据库选用了完全恢复模型,那么这个数据库的所有操作都会被完全记录在事务日志中,并且这个数据库必须使用一种包含完整备份和事务日志备份的备份策略。http://www.cndba.cn/dave/article/4494

从 SOL Server 2005 开始,完整备份不再对事务日志进行截断。这样的话,事务日志的顺序不会被破坏,而且在完整备份损坏的时候可以用事务日志来进行恢复。http://www.cndba.cn/dave/article/4494http://www.cndba.cn/dave/article/4494

如果对 SQL Server 数据库具有最高等级的恢复要求,那么需要使用完全恢复模型。

2 大容量日志恢复模型

这种恢复模型很特殊,因为只有在执行某些特定大容量操作的时候,并且在只进行最小日志记录以提高性能的情况下才临时使用大容量日志恢复模型;所有其他操作都像完全恢复模型一样完整地记入了日志。

这种恢复模型只记录了回滚事务所需的信息,因此可以提高性能。由于没有记录重做信息,因此这种恢复模型不允许进行时点恢复。http://www.cndba.cn/dave/article/4494http://www.cndba.cn/dave/article/4494

http://www.cndba.cn/dave/article/4494

上文中描述的特定大容量操作包括∶

● BULK INSERT
● 使用 bcp 可执行文件
● SELECT INTO
● CREATE INDEX
● ALTER INDEX REBUILD
● DROP INDEX

注意:

使用大容量日志恢复模型是为了使大容量操作完成得更快。这种模型并不会减少事务日志备份所需的磁盘空间.http://www.cndba.cn/dave/article/4494

3 简单恢复模型

数据库选择使用简单恢复模型时,SQL Server 在每次发生检查点的时候对事务日志进行截断,截断的内容为所有检查点发生之前提交的事务。这种模型保证了日志始终保持在最小的状态,而且没必要进行事务日志备份(也不可能)。

MSDN 社区对三种模式的说明参考:http://www.cndba.cn/dave/article/4494http://www.cndba.cn/dave/article/4494

https://docs.microsoft.com/zh-cn/sql/relational-databases/backup-restore/recovery-models-sql-server?view=sql-server-2017

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
dave

dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 2261
    原创
  • 3
    翻译
  • 578
    转载
  • 191
    评论
  • 访问:7999473次
  • 积分:4346
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ