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


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

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

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

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

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

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

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

l 事务日志空间损耗

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

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

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

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

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

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

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

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

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

Tags in this post...

面试题 相关文章推荐
c/c++某大公司的两道笔试题
Feb 02 面试题
这段代码难道不该打印出56吗
Feb 27 面试题
一道写SQL的面试题和答案
Nov 19 面试题
北京一家公司的.net开发工程师笔试题
Apr 17 面试题
软件生产职位结构化面试主要考察要素及面试题库
Jun 12 面试题
面向对象设计的原则是什么
Feb 13 面试题
一份软件工程师的面试试题
Feb 01 面试题
What is EJB
Jul 22 面试题
介绍一下XMLHttpRequest对象
Feb 12 面试题
线程问题:wait()方法是定义在哪个类里面
Jul 07 面试题
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
Mar 12 面试题
值传递还是引用传递
Feb 08 面试题
数据库面试要点基本概念
Oct 31 #面试题
如何在存储过程中使用Loop
Jan 05 #面试题
SQL Server笔试题
Jan 10 #面试题
Android面试题附答案
Dec 08 #面试题
Android面试题及答案
Sep 04 #面试题
android面试问题与答案
Dec 27 #面试题
Android笔试题总结
Nov 29 #面试题
You might like
绿山咖啡和蓝山咖啡
2021/03/04 新手入门
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
2006/10/09 PHP
php字符编码转换之gb2312转为utf8
2013/10/28 PHP
ThinkPHP3.1新特性之Action参数绑定
2014/06/19 PHP
CI框架学习笔记(一) - 环境安装、基本术语和框架流程
2014/10/26 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
Smarty模板变量与调节器实例详解
2019/07/20 PHP
JavaScript 继承详解(四)
2009/07/13 Javascript
jquery 插件学习(六)
2012/08/06 Javascript
Javascript判断图片尺寸大小实例分析
2014/06/16 Javascript
javascript比较两个日期的先后示例代码
2014/12/31 Javascript
javascript实现checkbox全选的代码
2015/04/30 Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
老生常谈遮罩层 滚动条的问题
2016/04/29 Javascript
js实现图片切换(动画版)
2016/12/25 Javascript
微信JSAPI支付操作需要注意的细节
2017/01/10 Javascript
Bootstrap页面缩小变形的快速解决办法
2017/02/03 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
2019/06/10 jQuery
如何利用Node.js与JSON搭建简单的动态服务器
2020/06/16 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
2020/12/14 Vue.js
Python编程之列表操作实例详解【创建、使用、更新、删除】
2017/07/22 Python
python画一个玫瑰和一个爱心
2020/08/18 Python
python获取地震信息 微信实时推送
2019/06/18 Python
python三引号如何输入
2020/07/06 Python
Django ModelForm组件原理及用法详解
2020/10/12 Python
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
DOUGLAS荷兰:购买香水和化妆品
2020/10/24 全球购物
美国健康和保健平台:healtop
2020/07/02 全球购物
事业单位个人总结
2015/02/12 职场文书
勤俭节约倡议书范文
2015/04/29 职场文书
大学生学生会工作总结2015
2015/05/26 职场文书
2015年四年级班主任工作总结
2015/10/22 职场文书
广播稿:校园广播稿范文
2019/04/17 职场文书
golang http使用踩过的坑与填坑指南
2021/04/27 Golang