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


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

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

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

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

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

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

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

l 事务日志空间损耗

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

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

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

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

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

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

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

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

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

Tags in this post...

面试题 相关文章推荐
神路信息Java面试题目
Mar 31 面试题
某个公司的Java笔面试题
Mar 11 面试题
C,C++的几个面试题小集
Jul 13 面试题
C语言基础笔试题
Apr 27 面试题
"引用"与指针的区别是什么
Sep 07 面试题
必须要使用游标的SQL语句有那些
May 07 面试题
介绍一下代理模式(Proxy)
Oct 17 面试题
OLEDBConnection和SQLConnection有什么区别
May 31 面试题
广州品高软件.net笔面试题目
Apr 18 面试题
Hashtable 添加内容的方式有哪几种,有什么区别?
Apr 08 面试题
关于Java finally的面试题
Apr 27 面试题
Java基础面试题
Nov 02 面试题
数据库面试要点基本概念
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 __autoload()方法真的影响性能吗?
2012/03/30 PHP
获取URL文件名后缀
2013/10/24 PHP
Javascript 原型和继承(Prototypes and Inheritance)
2009/04/01 Javascript
JavaScript 未结束的字符串常量常见解决方法
2010/01/24 Javascript
js 弹出菜单/窗口效果
2011/10/30 Javascript
js中top/parent/frame概述及案例应用
2013/02/06 Javascript
Jquery多选框互相内容交换的实例代码
2013/07/04 Javascript
jQuery中delegate与on的用法与区别示例介绍
2013/12/20 Javascript
解决json日期格式问题的3种方法
2014/02/02 Javascript
纯js和css实现渐变色包括静态渐变和动态渐变
2014/05/29 Javascript
JavaScript 事件绑定及深入
2015/04/13 Javascript
JS操作JSON方法总结(推荐)
2016/06/14 Javascript
JavaScript接口的实现三种方式(推荐)
2016/06/14 Javascript
Vue.js双向绑定实现原理详解
2016/12/22 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
three.js实现3D模型展示的示例代码
2017/12/31 Javascript
Vue2.0生命周期的理解
2018/08/20 Javascript
详解react阻止无效重渲染的多种方式
2018/12/11 Javascript
详解nodejs 开发企业微信第三方应用入门教程
2019/03/12 NodeJs
vue-cli3 配置开发与测试环境详解
2019/05/17 Javascript
ant-design-vue 实现表格内部字段验证功能
2019/12/16 Javascript
[26:52]LGD vs EG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python实现将英文单词表示的数字转换成阿拉伯数字的方法
2015/07/02 Python
pyinstaller打包单个exe后无法执行错误的解决方法
2019/06/21 Python
Python批量修改图片分辨率的实例代码
2019/07/04 Python
Python中常用的os操作汇总
2020/11/05 Python
Python 转移文件至云对象存储的方法
2021/02/07 Python
html5 标签
2009/07/16 HTML / CSS
将HTML5 Canvas的内容保存为图片借助toDataURL实现
2013/05/20 HTML / CSS
ALEX AND ANI:手镯,项链,耳环和更多
2017/04/20 全球购物
公司年会搞笑主持词
2014/03/24 职场文书
银行竞聘演讲稿
2014/05/16 职场文书
企业标语口号
2014/06/10 职场文书
初中语文教学研修日志
2015/11/13 职场文书
详解Java七大阻塞队列之SynchronousQueue
2021/09/04 Java/Android