APP下载

SQL Server 数据库备份和恢复新探

2015-08-15程代娣王鹤琴

黄山学院学报 2015年3期
关键词:数据库系统镜像事务

程代娣,王鹤琴

(安徽警官职业学院,安徽 合肥230031)

1 引 言

在互联网和云技术时代,网络数据库技术在很多行业和部门管理数据中得到广泛采用,因而,数据安全问题倍受用户重视。对于一个数据库应用系统来说,数据是至关重要的资源,一旦数据丢失,可能影响正常的业务活动,甚至造成灾难性后果。尽管SQL Server 的安全管理机制采取了各种保护措施来维护数据的安全性和完整性,但在计算机系统中常常出现硬件故障、软件故障、误操作和恶意破坏行为,这些故障的出现在不同程度上会破坏数据库中的数据,甚至引起灾难性的后果。因此,仅仅靠登录帐号、数据库用户账号和权限管理措施,还不能完全确保数据库的安全。本文提出了一系列的数据备份和恢复措施,以保证SQL Server 数据库系统中数据的完整性和安全性,将损失减少到最小程度。

2 数据库备份策略

2.1 数据库备份的含义

数据库备份是指对数据库中的数据定期进行复制保存到本地存储设备或其他机器存储设备上,当数据库系统故障发生时,能尽快地利用这些数据备份把数据库恢复到破坏前的状态,使系统能在较短的时间内恢复正常,将损失减小到最低[1]。

2.2 数据库备份类型

2.2.1 完全数据库备份

完全数据库备份是备份数据库中的所有数据信息,包括备份数据文件、事务日志部分(以便可以恢复整个备份)及数据库中的所有对象,也称全库备份[2]。完整数据库备份还原到备份时刻的数据库状态,但从备份以后到发生故障的这段时间对数据库的修改将被丢失。完全备份是所有备份的基点,其他备份只有在执行了完全备份之后才能被执行。它的优点是操作简单,备份数据库所有信息。完全数据库备份适合数据库数量少,且数据更改不是很频繁的情况,一般设定系统1 周做1 次全库备份。

2.2.2 数据库差异备份

数据库差异备份,是指只备份从最近完全备份以后的对数据库进行修改更新的数据。它以最近一次全库备份为基点,备份最近一次全库备份后变化的内容,也称增量备份[3]。备份内容少且备份速度快,因而,为减少丢失数据的风险可经常备份。若需要使用增量备份还原被破坏的数据库系统,不能直接使用数据增量备份来还原,而需要先用最新的一次全库备份进行来恢复,然后再使用一次增量备份进行还原到差异备份的时刻点。

2.2.3 事务日志备份

事务日志是一个记录数据库改变的单独文件。事务日志备份指只复制上一次日志备份之后的日志记录,又称日志备份。对于大型数据库来说,进行一次完全备份会占用较长的时间,这降低数据库系统的整体性能,为了提高数据库系统的使用效率,此时可采用事务日志备份方式。日志备份也必须要有一个完全备份作为恢复的基准点。当数据库需要事务日志备份时,数据库还原模式应首先设为“完全”或“大容量日志记录”的方式,然后进行一个完全数据库备份后才能进行事务日志备份。事务日志备份所处理的数据量较小,占用较少的备份时间和存储空间,一般系统每小时进行一次事务日志备份。当使用事务日志备份还原数据库时,不能直接单独使用,需要用一次完全数据库备份先还原,然后再使用事务日志备份按备份的时间先后顺序依次还原。

2.2.4 数据文件及文件组备份

数据库一般是保存在存储介质上的多个文件组成。数据文件及文件组备份是指定对数据库中的某一部分文件进行复制。这类恢复过程简单,在恢复时只对被破坏的数据库文件做恢复,不必对其余部分数据库还原,加快了恢复进度。恢复部分数据和文件或文件组后,必须再恢复该备份后所做的所有事务日志备份,通过结合事务日志备份,这样可避免造成数据库不一致。因此,在做文件或文件组备份之后,有必要立即做一个事务日志备份[4]。

2.3 数据库备份方案

尽管SQL Server 提供了多种备份方式,但要使数据库备份方式符合实际应用需要,还需要制定合适的备份策略。不同的备份适用不同的应用,选择或制定最合适的备份策略可以最大程度地减少数据丢失,并可加快恢复过程。

2.3.1 完全备份策略

完全备份策略适合数据库数据量不大,且数据修改小或允许一定量的数据丢失时,备份的时间间隔较大,一般1 周备份1 次。

2.3.2 完全备份+日志备份策略

如果用户数据十分重要不允许丢失太多的数据,数据库又更新频繁,为了节省时间,不易经常备份数据库,可在完全备份中间进行日志备份。完全备份加日志备份策略特别适合生产数据库系统,这时可以在完全备份中间加入日志备份。由于数据库备份的容量较小,可以较频繁进行,使数据库数据丢失程度最小,使用日志备份还可以在还原数据时指定到特定的时间点。

2.3.3 完全备份+差异备份+日志备份策略

仅使用完全备份加日志备份的方法恢复数据库,则还原时将会占用大量的时间。差异备份操作速度快,减少备份时间。如果希望加快恢复故障数据库的时间,降低数据损失,在进行完全备份中间加一些差异备份,即完全备份+差异备份+日志备份策略组合,在恢复时也只还原最近一次差异备份,然后依次还原日志备份。

2.3.4 数据库镜像(硬盘镜像备份)

数据库镜像也称磁盘镜像备份,镜像就是在不同的存储设备上同时保存两个数据库,一个设备称为主设备,另一个称为镜像设备,二者互为镜像关系。为了防止介质故障影响数据库系统的有用性,SQL Server 数据库管理系统可使用数据库镜像功能来还原数据库,通常由数据库管理员设定SQL Server 系统自动完成。即按照数据库管理员的指令,数据库管理系统把全部数据库或数据库中核心数据自动复制到备用存储介质上,主数据库修改变化时,自动地把更新后的数据拷贝过去,实现了镜像数据和主数据库的同一性。

2.3.5 服务器镜像备份(双热机备份)

在经济条件允许和数据的安全性要求特别高的情况下,可采用双热机备份策略。该方法保护数据最快,安全性高。双热机备份策略就是单独使用一台计算机作为备份服务器,此台计算机的软硬件配置与服务器配置相当,随时替代主服务器,如果主服务器受到安全上的攻击和软硬件故障,用备份服务器接替主服务器工作即可,就好像什么也没有发生,然而这是费用最昂贵的。

2.3.6 异机备份

异机备份则是最好最经济的备份方式。具体做法是:在局域网的任何一台工作站计算机上安装(Windows NT)或SQL Server,并在该机上建立一个与服务器上数据库同名的数据库,利用SQL Server系统本身提供的异机传送功能(在企业管理器重的“工具”菜单下的DataBase/Object Transfer)通过设置定时由计算机自动地把服务器中数据库的数据传送到该工作站机的数据库中。

3 数据库恢复策略

3.1 数据库恢复的含义

数据库恢复是指利用事先的备份策略将数据库系统从错误状态还原到最近的正确时刻状态的过程[5]。

3.2 数据库恢复方案

数据库出现故障的原因多种多样,不同的故障原因采用还原策略和方法也不一致。对于系统故障、事务故障恢复由系统重新启动时自动完成。而对于发生介质故障,磁盘上的物理数据和日志被破坏,损失最大,恢复需要用户干预。这里主要分析当数据库系统出现介质故障或异常毁坏时,适合采用数据备份对数据库进行恢复。恢复模式是数据库的一种特性,它控制着数据库备份和还原的基本行为,数据库管理员应根据实际运作的需求,对数据的可用性和恢复需求来选择合适的恢复模式,对介质引起的故障SQL Server 提供了3 种恢复技术。

3.2.1 利用备份技术恢复

数据库管理员合理规划好数据库备份策略,并进行定期备份数据瞬时正确状态,以保证在数据库系统发生故障时,管理员可以利用备份副本还原数据库到备份完成时刻点的正确状态。恢复的方案是首先重装数据库,使数据库管理系统能正常运行,然后利用介质损坏前对数据库已做的备份或利用镜像设备恢复数据库。SQL Server 提供了3 种恢复模式。

3.2.1.1 简单恢复模式

该模式系统自动地定期将事务日志中不活动的部分清除掉,只能进行完全备份和差异备份,不使用事务日志备份,只能还原到执行备份操作的那一时刻,不可能恢复到失败时刻点,将丢失执行备份之后的所有修改的数据。对生产系统来说,丢失最新的更新时是难以接受的,因此,简单恢复模式并不适合生产系统。

3.2.1.2 完整恢复模式

该模式使用数据库备份和事务日志备份来对数据库故障进行完全防范,防止最大范围的故障情形所造成的工作损失,为数据提供了最大的保护性。事务日志中记录了数据库数据的全部更新操作,当数据库遭到破坏时,可以利用事务日志快速地将数据库恢复到故障点状态。恢复顺序是首先使用最近的一次完整备份恢复,其次恢复最近的一个增量备份,最后按备份先后顺序还原日志备份。

3.2.1.3 大容量日志恢复模式

作为完全恢复模式的补充模式,大容量日志恢复模式使用最小的方法记录大规模大容量操作,其事务日志占用的磁盘空间远远小于其他恢复模式。它保护大规模操作不因介质媒体故障而受到损害,提供最佳性能并占用最小日志空间,为某些大规模操作提供了更高的性能和最少的日志使用空间。大容量日志恢复模式不能使数据库系统恢复到破坏时的正确状态,因此该恢复模式下,需要事先进行日志备份。

3.2.2 利用镜像技术恢复

数据库镜像功能常用于恢复由磁盘介质引起的数据库故障。当发生介质故障影响数据库系统的有用性时,数据库管理员可使用SQL Server 数据库镜像功能来还原数据库。突发介质损坏引起的故障,镜像的磁盘就代替主磁盘进行工作,实现数据库继续使用的,并通过镜像数据进行数据库的修复,不必关闭系统或重装数据库副本。

3.2.3 异机备份恢复技术

采用异机备份恢复技术策略,一旦服务器(操作系统) 崩溃或Microsoft SQL Server 系统崩溃时,只要重装服务器操作系统(Microsoft Windows NT)或重装Microsoft SQL Server 从异机传送数据恢复,即采用异机传送工具来通过该工作站把数据传回至服务器的Microsoft SQL Server 数据库中,以确保数据的安全恢复。这也是最好最经济的备份恢复技术。

4 结束语

总之,根据数据库系统性质特点,合理有效的规划数据库备份和恢复策略,可以较好地保证数据的安全。SQL Server 是一个高性能、分布式的网络数据库管理系统,它的备份和还原组件为数据库中的关键数据提供了有力的安全保障。本文提出了一系列的备份和恢复策略,在数据库系统出现故障时,只要采用适当有效地备份和恢复措施,大型数据库SQL Server 的数据安全性和完整性能够得到有效地保障。

[1]张浩军,张凤玲.数据库设计开发技术案例教程[M].北京:清华大学出版社,2012:242.

[2]尹志宇,郭晴.数据库原理与应用教程——SQL Server2008[M].北京:清华大学出版社,2013:285.

[3]何玉洁.数据库原理与应用教程(第2 版)[M].北京:机械工业出版社,2007:168.

[4]王晖媛.SQL Server 中数据库备份和恢复方法的研究[J].计算机光盘软件与应用,2011(2):112.

[5]王珊,萨师煊.数据库系统概论(第4 版)[M].北京:高等教育出版社,2006:285.

猜你喜欢

数据库系统镜像事务
基于分布式事务的门架数据处理系统设计与实现
镜像
河湖事务
镜像
基于OCC-DA-MCP算法的Redis并发控制
微细铣削工艺数据库系统设计与开发
江苏省ETC数据库系统改造升级方案探讨
实时数据库系统数据安全采集方案
核反应堆材料数据库系统及其应用
镜像