SQL Server提供的3种恢复模型都是什么? 有什么区别?


Posted in 面试题 onMay 13, 2012
SQL Server提供了3种恢复模型,分别是:

l 简单恢复 ,允许将数据库恢复到最新的备份。

l 完全恢复,允许将数据库恢复到故障点状态。

l 大容量日志记录恢复,允许大容量日志记录操作。

这些模型中的每个都是针对不同的性能、磁盘和磁带空间以及保护数据丢失的需要。例如,当选择恢复模型时,必须考虑下列业务要求之间的权衡:

l 大规模操作的性能(如创建索引或大容量装载)。

l 数据丢失表现(如已提交的事务丢失)。

l 事务日志空间损耗

l 备份和恢复过程的简化。

根据正在执行的操作,可以有多个适合的模型。选择了恢复模型后,设计所需的备份和恢复过程。表6提供了三种恢复模型的优点和含义的概述。

表 6备份模型之间的比较
恢复模型 优点 工作损失表现 能否恢复到即时点?
简单 允许高性能大容量复制操作。

收回日志空间以使空间要求最小。
必须重做自最新的数据库或差异备份后所发生的更改。 可以恢复到任何备份的结尾处。随后必须重做更改。
完全 数据文件丢失或损坏不会导致工作损失。

可以恢复到任意即时点(例如,应用程序或用户错误之前)。
正常情况下没有。

如果日志损坏,则必须重做自最新的日志备份后所发生的更改。
可以恢复到任何即时点。
大容量日志记录的 允许高性能大容量复制操作。大容量操作使用最少的日志空间。 如果日志损坏,或者自最新的日志备份后发生了大容量操作,则必须重做自上次备份后所做的更改。否则不丢失任何工作。 可以恢复到任何备份的结尾处。随后必须重做更改。

简单恢复所需的管理最少。在简单恢复模型中,数据只能恢复到最新的完整数据库备份或差异备份的状态。不使用事务日志备份,而使用最小事务日志空间。一旦不再需要日志空间从服务器故障中恢复,日志空间便可重新使用。与完整模型或大容量日志记录模型相比,简单恢复模型更容易管理,但如果数据文件损坏,则数据损失表现会更高。

完全恢复和大容量日志记录恢复模型为数据提供了最大的保护性。这些模型依靠事务日志提供完全的可恢复性,并防止最大范围的故障情形所造成的工作损失。完全恢复模型提供最大的灵活性,可将数据库恢复到更早的即时点。

大容量日志记录模型为某些大规模操作(如创建索引或大容量复制)提供了更高的性能和更低的日志空间损耗。不过这将牺牲时点恢复的某些灵活性。很多数据库都要经历大容量装载或索引创建的阶段,因此可能希望在大容量日志记录模型和完全恢复模型之间进行切换。

Tags in this post...

面试题 相关文章推荐
如何强制垃圾回收
Oct 06 面试题
描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理
Mar 25 面试题
什么是Smart Navigation?
Jul 03 面试题
网络方面基础面试题
Nov 16 面试题
别名指示符是什么
Oct 08 面试题
abstract 可以和 virtual 一起使用吗?可以和 override 一起使用吗?
Oct 15 面试题
C#中有没有运算符重载?能否使用指针?
May 05 面试题
在对linux系统分区进行格式化时需要对磁盘簇(或i节点密度)的大小进行选择,请说明选择的原则
Nov 24 面试题
如何开启linux的ssh服务
Feb 14 面试题
Boolean b = new Boolean(“abcde”); 会编译错误码
Nov 27 面试题
JAVA高级程序员面试题
Sep 06 面试题
解释一下ruby中的特殊方法与特殊类
Feb 26 面试题
数据库面试要点基本概念
Oct 31 #面试题
如何在存储过程中使用Loop
Jan 05 #面试题
SQL Server笔试题
Jan 10 #面试题
Android面试题附答案
Dec 08 #面试题
Android面试题及答案
Sep 04 #面试题
android面试问题与答案
Dec 27 #面试题
Android笔试题总结
Nov 29 #面试题
You might like
一个PHP+MSSQL分页的例子
2006/10/09 PHP
shell脚本作为保证PHP脚本不挂掉的守护进程实例分享
2013/07/15 PHP
php实现通过ftp上传文件
2015/06/19 PHP
PHP检查网站是否宕机的方法示例
2017/07/24 PHP
PHP消息队列实现及应用详解【队列处理订单系统和配送系统】
2019/05/20 PHP
use jscript with List Proxy Server Information
2007/06/11 Javascript
原来Jquery.load的方法可以一直load下去
2011/03/28 Javascript
jQuery 在光标定位的地方插入文字的插件
2012/05/10 Javascript
JS实现的一个简单的Autocomplete自动完成例子
2014/04/16 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
2014/12/19 Javascript
使用jquery动态加载js文件的方法
2014/12/24 Javascript
JavaScript中扩展Array contains方法实例
2020/08/23 Javascript
jQuery层动画定位滑动效果的方法
2015/04/30 Javascript
基于javascript实现全屏漂浮广告
2016/03/31 Javascript
学习AngularJs:Directive指令用法(完整版)
2016/04/26 Javascript
JS上传组件FileUpload自定义模板的使用方法
2016/05/10 Javascript
jquery插件ContextMenu设置右键菜单
2017/03/13 Javascript
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
Angularjs的$http异步删除数据详解及实例
2017/07/27 Javascript
React Native中的RefreshContorl下拉刷新使用
2017/10/09 Javascript
在Vue methods中调用filters里的过滤器实例
2018/08/30 Javascript
angular 实现同步验证器跨字段验证的方法
2019/04/11 Javascript
利用d3.js实现蜂巢图表带动画效果
2019/09/03 Javascript
手把手带你搭建一个node cli的方法示例
2020/08/07 Javascript
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
python编程实现随机生成多个椭圆实例代码
2018/01/03 Python
python命名空间(namespace)简单介绍
2019/08/10 Python
Python基于stuck实现scoket文件传输
2020/04/02 Python
文件上传服务器-jupyter 中python解压及压缩方式
2020/04/22 Python
C和C++经典笔试题附答案解析
2014/08/18 面试题
国际贸易专业个人求职信范文分享
2013/12/14 职场文书
测控技术与通信工程毕业生自荐信范文
2013/12/28 职场文书
给面试官的感谢信
2014/02/01 职场文书
技术支持岗位职责
2015/02/13 职场文书
适合青年人白手起家的创业项目分享
2019/08/16 职场文书
springboot中rabbitmq实现消息可靠性机制详解
2021/09/25 Java/Android