码迷,mamicode.com
首页 > 数据库 > 详细

浅谈 SQLServer 数据库的备份与还原

时间:2019-07-04 22:35:22      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:一般来说   系统   技术   自动   恢复模式   重要   信息   ima   记录   

在生活中,数据库管理员最担心的就是数据库瘫痪,从而造成数据丢失,任何数据的丢失都会造成非常严重的后果,所以我们为了更有效的保护和恢复数据,需要进行备份数据。
一般来说,造成数据的丢失主要包括几类:
1、程序错误:程序异常终止或逻辑错误
2、人为错误:管理员误操作
3、计算机失败:系统崩溃,硬件和软件引起的错误
4、磁盘失败:磁盘读写磁头损坏、磁盘物理块损坏
5、灾难和偷窃:自然灾害、人为偷窃都会造成
SQL server的备份有如下三种:
1、完整备份:完整备份包括对整个数据库、部分事务日志、数据库结构和文件结构的备份。它代表的是备份完成时刻的数据库。是所有备份类型的基础。

2、差异备份:是指对上一次完整备份之后所有更改的数据做备份,备份过程能够识别出数据库中哪一部分被修改了,并只对这一部分做备份。

差异备份的优势是速度快,备份数据库所需要的时间很少,但差异备份要求事先已经执行过一次完整备份。

3、事务日志备份:记录了数据库的所有改变,在备份事务日志时,需要考虑以下因素:

在执行了至少一次完整备份后,才能备份事务日志;
在简单恢复模式下不能备份事务日志;
如果没有与其相一致的数据库备份,则不能恢复事务日志。
在执行数据库事务日志备份期间,SQL server将做以下工作:
备份事务日志:从上一次成功的事务日志备份到当前事务日志的尾部;
截断事务日志:到事务日志活动部分的开始,丢弃不活动的部分。
事务日志备份主要是T-SQL语句,而不是整个数据库结构、文件结构或数据。
恢复模式也有三种:
1、简单恢复模式:在简单恢复模式下,不活动的日志将被删除,所以不支持事务日志备份。也正是因为不支持事务日志备份,数据库只能恢复到备份的时间点,而无法将数据库还原到故障点或特定的时间点。因此,简单恢复模式只适用于小型数据库和不经常改动的数据库。

2、完整恢复模式:对于十分重要的生产数据库,如银行、电信系统,在发生故障时可能要求恢复到历史上某个时刻,一旦发生故障,必须保证数据不丢失,保证数据能够恢复到发生故障的状态。这样,就必须采用完整恢复模式。

完整恢复模式可在最大范围内防止出现故障时丢失数据,它包括数据库备份和事务日志备份,并提供全面保护,使数据库免受媒体故障的影响。

由于支持事务日志备份,因此完整恢复模式可以将数据库恢复到任意一个指定的时间点。

3、大容量日志恢复模式:
DBA在某些场合需要对数据库执行一些大批量的数据插入、更新或删除等操作,如一次需要导入上百万条数据,如果在完整恢复模式下,那么这些操作将产生大量的日志记录,导致数据库性能很低。在这种情况下,可以采用大容量日志恢复模式来提高性能。

虽然大容量日志恢复模式会完整的记录其他事务,但它只对大容量操作进行最小记录,只要日志备份包含大容量操作,数据库就只能恢复到日志备份的结尾,而不能恢复到某个时间点或日志备份中某个标记的事务。
备份设备:
在进行备份时,一般是建立一个文件来存储备份的数据,这个备份文件就叫做备份设备,如图中的backup就是创建的一个备份设备:
技术图片
注意:若想创建自动备份,那么SQL server代理必须启用:
技术图片
创建备份计划:
右击“维护计划”,点击“维护计划向导”即可根据向导来进行做备份计划:
技术图片
技术图片
勾选要执行的工作:
技术图片
定义详细信息:
技术图片
设置自动清除历史备份:

由于每天对数据库进行备份,时间久了,其备份文件占用的磁盘空间也越来越大,通过修改维护计划,可以
技术图片
技术图片
所有的备份设置,最好在初次备份时,进行全面的检查,以确保备份的万无一失。
备份完毕之后,查看备份文件:
技术图片
技术图片
这里我们删除数据库中的表来模拟数据库数据丢失
技术图片
技术图片
技术图片
技术图片

浅谈 SQLServer 数据库的备份与还原

标签:一般来说   系统   技术   自动   恢复模式   重要   信息   ima   记录   

原文地址:https://blog.51cto.com/14227204/2417218

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!