SQL server数据库的备份和还原
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL server数据库的备份和还原相关的知识,希望对你有一定的参考价值。
SQL server的备份有如下三种:
1、完整备份:完整备份包括对整个数据库、部分事务日志、数据库结构和文件结构的备份。它代表的是备份完成时刻的数据库。是所有备份类型的基础。
2、差异备份:是指对上一次完整备份之后所有更改的数据做备份,备份过程能够识别出数据库中哪一部分被修改了,并只对这一部分做备份。
差异备份的优势是速度快,备份数据库所需要的时间很少,但差异备份要求事先已经执行过一次完整备份。
3、事务日志备份:记录了数据库的所有改变,在备份事务日志时,需要考虑以下因素:
- 在执行了至少一次完整备份后,才能备份事务日志;
- 在简单恢复模式下不能备份事务日志;
- 如果没有与其相一致的数据库备份,则不能恢复事务日志。
在执行数据库事务日志备份期间,SQL server将做以下工作: - 备份事务日志:从上一次成功的事务日志备份到当前事务日志的尾部;
- 截断事务日志:到事务日志活动部分的开始,丢弃不活动的部分。
事务日志备份主要是T-SQL语句,而不是整个数据库结构、文件结构或数据。
恢复模式也有三种:
1、简单恢复模式:在简单恢复模式下,不活动的日志将被删除,所以不支持事务日志备份。也正是因为不支持事务日志备份,数据库只能恢复到备份的时间点,而无法将数据库还原到故障点或特定的时间点。因此,简单恢复模式只适用于小型数据库和不经常改动的数据库。
2、完整恢复模式:对于十分重要的生产数据库,如银行、电信系统,在发生故障时可能要求恢复到历史上某个时刻,一旦发生故障,必须保证数据不丢失,保证数据能够恢复到发生故障的状态。这样,就必须采用完整恢复模式。
完整恢复模式可在最大范围内防止出现故障时丢失数据,它包括数据库备份和事务日志备份,并提供全面保护,使数据库免受媒体故障的影响。
由于支持事务日志备份,因此完整恢复模式可以将数据库恢复到任意一个指定的时间点。
3、大容量日志恢复模式:
DBA在某些场合需要对数据库执行一些大批量的数据插入、更新或删除等操作,如一次需要导入上百万条数据,如果在完整恢复模式下,那么这些操作将产生大量的日志记录,导致数据库性能很低。在这种情况下,可以采用大容量日志恢复模式来提高性能。
虽然大容量日志恢复模式会完整的记录其他事务,但它只对大容量操作进行最小记录,只要日志备份包含大容量操作,数据库就只能恢复到日志备份的结尾,而不能恢复到某个时间点或日志备份中某个标记的事务。
备份设备:
在进行备份时,一般是建立一个文件来存储备份的数据,这个备份文件就叫做备份设备,如下图中的backup就是创建的一个备份设备:
如何设置自动备份?需要注意的是,若想创建自动备份,那么SQL server代理必须启用:
创建备份计划:
右击“维护计划”,点击“维护计划向导”即可根据向导来进行做备份计划:
勾选要执行的工作
定义详细信息
设置自动清除历史备份:
由于每天对数据库进行备份,时间久了,其备份文件占用的磁盘空间也越来越大,通过修改维护计划,可以自动清除历史备份,具体步骤如下所示:
所有的备份设置,最好在初次备份时,进行全面的检查,以确保备份的万无一失。
以上是关于SQL server数据库的备份和还原的主要内容,如果未能解决你的问题,请参考以下文章
如何设置将SQL SERVER2012数据库备份还原到SQL SERVER2008上
sql server 2012的备份怎么还原到sql server 2008