对于我们学习数据库,那么了解数据库的恢复模式是至关重要的。那什么是数据库的恢复模式呢? 恢复模式旨在控制事务日志维护。有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式。通常,数据库使用完整恢复模式或简单恢复模式。这句话截自微软官网。

 

我来给个截图,当然我们也可以选择“其他版本”

sql server 数据库恢复 存储过程 mdf sql数据库恢复模式_数据库

 

上面说了数据库的恢复模式有三种:

1.完整

2.大容量日志

3.简单

 

如下图

sql server 数据库恢复 存储过程 mdf sql数据库恢复模式_数据库_02

 

微软的文章有时候不够通俗,那么我来用自己的理解来描述下。

其实数据库呢就相当于公司的一个仓库,仓库里面存着许多产品,日志文件就相当于仓库的记账人员,比如有人要去仓库领料,那么记账人员就把谁几点几分,领了什么料,领了多少料都记录下来,仓库的主管跟记账人员说了,你呀记得越详细越好,这个就是完整恢复模式,设置成完整恢复模式,那么日志文件将记录非常详细的信息,既然记录了如此详细,那么在我们数据库恢复的时候,就可以恢复到任何指定的时间点。打个比方:张三3点半到仓库领了5带料,然后领导看了记账人员的记录,发现我靠不对呀,张三不是我们公司的人,你咋让他领料了,记账人员说没事,你看我连张三的指纹,×××号码,照片都有,我马上让他把料还回来,领导说不错小子有前途,哇哈哈。说明即使这样的误操作有了完整日志,恢复数据库还不是,小菜一碟。

 

大容量日志,跟完整基本上是一样的,只是没有像完整那样灰常灰常的详细而已,它不记录数据库修改的时间,那么在当数据库设置成这样的恢复模式后,数据库的恢复就比不上完整恢复模式。

 

简单,简单是话就是相当于记账人员有一个日记本,领导告诉记账人员,公司经费紧张你就将就点就只有这一本日记本,要是用完了你就擦了重新记录很环保吧,呵呵也就是如果数据库设置成简单恢复模式,那么在数据库恢复的时候就只能恢复到备份的时间点。

 

总结:
完整 能够让数据库恢复到出故障时间点 指定时间点
大容量日志  数据库日志 不记录对数据修改的时间 效率高 只能通过日志恢复到故障点
简单  事务日志 不活跃的逻辑日志文件 覆盖 重复利用  不能利用日志还原数据库

数据库的恢复模式就是旨在控制事务日志的维护,微软截图中的第一句话。


转载于:https://blog.51cto.com/ksyiwen/1370935