首页 > 代码库 > 数据库备份与恢复方案
数据库备份与恢复方案
数据安全性
随着计算机的普及和信息技术的进步,特别是计算机网络的飞速发展,信息安全的重要性日趋明显。数据备份是保证信息安全的一个重要方法。
只要发生数据传输、数据存储和数据交换,就有可能产生数据故障。这时,如果没有采取数据备份和数据恢复手段与措施,就会导致数据的丢失。有时造成的损失是无法弥补与估量的。
数据故障的形式是多种多样的。通常,数据故障可划分为系统故障、事务故障和介质故障三大类。从信息安全数据库备份与恢复方案的角度出,实际上第三方或敌方的“信息攻击”,也会产生不同种类的数据故障。例如:计算机病毒型、特洛伊木马型、“黑客”入侵型、逻辑炸弹型等。这些故障将会造成的后果有:数据丢失、数据被修改、增加无用数据及系统瘫痪等。作为系统管理员,要千方百计地维护系统和数据的完整性与准确性。通常采取的措施有:安装防火墙,防止“黑客”入侵;安装防病毒软件,采取存取控制措施;选用高可靠性的软件产品;增强计算机网络的安全性。
世界上没有万无一失的信息安全措施。信息世界“攻击和反攻击”也永无止境。对信息的攻击和防护好似矛与盾的关系,螺旋式地向前发展。
在信息的收集、处理、存储、传输和分发中经常会存在一些新的问题,其中最值得我们关注的就是系统失效、数据丢失或遭到破坏。
威胁数据的安全,造成系统失效的主要原因有以下几个方面:
1) 硬盘驱动器损坏;
2) 人为错误;
3) 黑客攻击;
4) 病毒;
5) 自然灾害;
6) 电源浪涌;
7) 磁干扰;
因此,数据备份与数据恢复是保护数据的最后手段,也是防止主动型信息攻击的最后一道防线。
SQL SERVER数据备份方案
SQL SERVER数据库的备份方法主要有完整备份,差异备份,事务日志备份等。根据数据安全性的要求,推荐的备份方式为每周一次完整备份,每天一次差异备份,每半个小时一次事务日志备份。
默认情况下,为 sysadmin 固定服务器角色以及 db_owner 和 db_backupoperator 固定数据库角色的成员授予 BACKUP DATABASE 和 BACKUP LOG 权限。
备份设备的物理文件的所有权和权限问题可能会妨碍备份操作。 SQL Server 必须能够读取和写入设备;运行 SQL Server 服务的帐户必须具有写入权限。
备份文件存放磁盘需要与数据库文件存放磁盘分开,避免磁盘IO冲突。备份执行时间与数据库作业执行时间错开,避免备份影响数据库作业的执行。
SQL SERVER 维护计划功能可以较好的实现自动化备份,在使用该功能前启动数据库管理器上的SQL SERVER 代理功能。如下图:
完整备份
1) 选择管理-维护计划-维护计划向导
2) 打开维护计划向导后,可以新增维护计划,并给维护计划命名,如下图:
3) 选择备份数据库(完整)维护任务
4) 设置数据库完备维护计划相关信息,包括备份的数据库,备份集过期时间,备份文件存储路径
5) 选择下一步,然后选择完成
6) 为维护计划指定执行周期
如上图所示,计划类型选择重复执行,周期选择每周,在每周日凌晨执行该计划。
7) 备份计划创建后,需要将过期的备份数据库自动删除,以保障磁盘空间的高效利用。在当前维护计划中建立清除维护任务,用于删除保留时间超过设定值的备份文件。
如上图,打开刚才已建立的数据备份计划,从维护计划任务列表中将清除维护任务拖入备份任务所在框;并拖动关联箭头建立备份任务与清除任务两个任务的关联关系。该关联关系用于指定执行的先后顺序。
8) 设置清除维护任务中文件夹以及文件保留周期
9) 如上方式是通过维护计划向导完成设置,也可以通过新建维护计划功能完成,通过新建维护计划,然后拖动备份数据库任务、清楚维护任务,相关设置同上方法。
差异备份
1) 选择维护计划-新建维护计划
2) 设置维护计划名称:差异备份
3) 打开差异备份计划,并拖动备份数据库任务与清除维护任务到当前计划任务框中。
4) 设置备份数据库任务中备份类型为差异,并设置备份类型,备份指定数据库,备份存储文件夹
5) 双击打开清楚维护任务,设置清除维护任务中文件夹以及文件保留周期
事务日志备份
1) 选择维护计划-新建维护计划
2) 设置维护计划名称:事务日志备份
3) 打开差异备份计划,并拖动备份数据库任务与清除维护任务到当前计划任务框中。
4) 设置备份数据库任务中备份类型为事务日志,并设置备份类型,备份指定数据库,备份存储文件夹
5) 双击打开清楚维护任务,设置清除维护任务中文件夹以及文件保留周期
数据库恢复
还原完整备份
还原完整备份是指对数据库完整备份文件进行还原,将数据库还原到完备时的状态。
1) 选择还原数据库
2) 在常规选项下,设置还原目标数据库名称,源设备(数据库完备文件)等。
3) 设置还原数据库文件存放路径,并选择覆盖现有数据库、回滚未提交事务。
还原完整备份+差异备份
该方式是将数据库还原到差异备份的状态。在还原完整备份后,可以继续对目标数据库还原差异备份,用于将差异备份保存的数据更新进入当前数据库,使数据库还原到差异备份时的状态。
1) 选择还原数据库
2) 在常规选项下,设置还原目标数据库名称,源设备(数据库完备文件)等。
3) 设置还原数据库文件存放路径,并选择覆盖现有数据库、不对数据库执行回滚未提交事务。
4) 上一步完成后,数据库处于还原中状态;可继续对数据库进行还原,源设备选择差异备份文件。
5) 设置差异备份文件还原时文件存放路径,数据库事务日志回滚方式。
还原完整备份+差异备份+事务日志备份
该方式是将数据库还原到事务日志备份时的状态。在还原完整备份后,可以继续对目标数据库还原差异备份然后在继续还原事务日志备份,用于将差异备份、事务日志备份保存的数据更新进入当前数据库,使数据库还原到事务日志备份时的状态。
1) 选择还原数据库
2) 在常规选项下,设置还原目标数据库名称,源设备(数据库完备文件)等。
3) 设置还原数据库文件存放路径,并选择覆盖现有数据库、不对数据库执行回滚未提交事务。
4) 上一步完成后,数据库处于还原中状态;可继续对数据库进行还原,源设备选择差异备份文件。
5) 设置差异备份文件还原时文件存放路径,数据库事务日志回滚方式。
6) 差异备份还原完成后,数据库处于还原中状态;继续选择还原,还原事务日志文件到当前数据库。
选择还原事务日志,常规选择设置
还原时间点设置;通过设置该时间点,可以将数据库还原到做完备时至事务日志备份时间段内的任一时间点。
选项中设置回滚未提交事务
执行完成后,数据库恢复可用状态,数据更新到指定时间的状态。如果没指定时间,则为事务日志备份时状态。