计算机数据库的备份与恢复技术研究

时间:2022-10-06 04:35:53

计算机数据库的备份与恢复技术研究

摘要:计算机技术在不断推广运用的同时,也给人们生活工作带来一些问题,如网络故障、系统故障、数据库破坏等安全问题。因此,为确保数据资料存储的安全性,加强计算机数据库的备份与恢复对用户来言是十分有必要的。本文针对计算机数据库的备份与恢复技术进行了深入地分析。

中图分类号:TP309.3文献标识码:A 文章编号:1007-9416(2012)04-0000-00

1、计算机数据库的备份技术分析

数据库的备份操作就是系统管理员定期或者不定期的对系统的数据库文档文件进行拷贝,复制到其他的储存空间中的过程。当正在使用的系统计算机数据库文件受到破坏,或者系统受到损坏的时候,就可以使用备份文件对数据库进行恢复。由于对数据库进行恢复操作时,只能恢复到备份时的状态,因此我们需要合理地进行备份操作,以避免大量的信息丢失。

1.1 计算机数据库的备份类型

1.1.1周期性数据库备份

如果系统使用的人数较多,范围较广,每天存储变更的数据较多,这样的数据库备份操作将会耗费大量的时间和计算机系统运行资源,因此这样的数据库备份工作就不能频繁进行。应设定一个合理的备份周期,并且备份操作开始的时间也应设定在夜间无人使用系统的时候进行。一般常用的备份方案为:每月,每周,每日都进行一次备份。每月的备份设定在月初或者月末,可以做为永久保存文件保存。每周一次的备份,可以保存一段时间,比如保存一年,而每日做出的备份时间,至少保存一个月方可删除。备份后的存储载体,应存放在安全,防潮的环境中,以避免损坏。

1.1.2 数据库不定期的备份

当系统面临以下各种操作时,应先做好备份,再予以操作,第一,数据库中的数据需要批量删除,批量修改,批量创建之前,应做好数据库备份工作。比如:执行CREATE DATABASE、ALTER DATA BASE和DROP DATABASE 命令等。第二,需要创建用户自定义对象时,由于创建了用户的自定义对象,master数据库就会被修改,因此,需要做好备份工作。第三,增加或删除服务器的系统存储过程,修改master、msdb、model数据库,清除事务日志或执行了不写入事务日志的操作。第四,应用系统中与数据库相关联的源代码源程序文件修改或者删除前,应做好数据库备份工作。

1.2 计算机数据库备份方法

1.2.1 镜像拷贝控制文件

控制文件记录了通用数据库的结构,存储着大量的数据库状态信息,包含物理结构和联机重作日志文件的名称,所处位置,以及运行状态等。控制文件在数据启动时会被实例进行读取,保持打开状态并根据操作情况进行更新,直到实例停止运行。因此,如果控制文件出现了损失或者丢失,异常等就会导致Oracle系统不能正常运行,因此,我们需要在系统中做好控制文件的多次备份,并且需要将这些备份存储在不同的磁盘设备中。

1.2.2 数据库实施较大改变时备份

当系统面临以下各种操作时,应先做好备份,再予以操作,数据库中的数据需要批量删除,批量修改,批量创建之前,应做好数据库备份工作。增加或删除服务器的系统存储过程,修改数据库表结构的操作时,清除事务日志或执行了不写入事务日志的操作。应用系统中与数据库相关联的源代码源程序文件修改或者删除前,都应做好数据库备份工作。

1.2.3 使用RESETLOGS选项打开数据库后进行备份

由于以RESETLOGS选项打开数据库时,Oracle将删除恢复中没有应用到的重复信息,并且还将初始化控制文件中关于联机日志和重作线程的信息,并删除联机日志中的相关内容。因此在以RESETLOGS选项打开数据库前,一定要注意对整个数据库进行脱机或者联机的备份操作,否则将不能恢复重置日志后的改变。

2、计算机数据库的恢复技术分析

在数据库系统运行过程中,有很多的情况都会引起系统损坏,数据信息丢失,比如磁盘损坏,电源故障,软件错误,人为破坏等等。因此,数据恢复技术也是极其重要的,比如Oracle系统就可以采用一些措施,保持事务的原子性和永久性, 确保数据尽可能不丢失、不破坏。系统可以把数据库从被破坏或者不正确的状态,恢复到最近的一个正确的状态,这种能力称为数据库的可恢复性。

以Oracle为例,主要可以通过以下一些方法来对数据恢复:

2.1 重置联机日志

为了保证数据库的一致性,必须要做到恢复后的所有数据文件都恢复到了同

一个时点,如果出现不完全恢复就很可能导致数据文件中出现一个与其他文件同的检查点,从而破坏数据库的一致性。还有可能在使用备份的控制文件进行恢复时,保存的SCN和计数器与当前的日志文件记录不同步,因此在进行了不完全恢复或者用备份控制文件进行恢复操作以后一定要重置联机日志。

2.2 多工联机重作日志文件

每个数据库实例都会创建与自己相对应的联机重作日志组,因此在对数据库进行操作时,Oracle首先会把数据库的全部改变保存在重作日志缓冲区里,然后日志记录器进程从系统共享区中的重作日志缓冲区将数据写机重作日志文件中。因此当磁盘崩溃或者实例出现异常时,可以通过与之相对应的联机重作日志来进行数据库保护,减少数据丢失。但是Oracle默认情况下只会创建一组重作日志文件,因此,我们需要对这些日志文件进行镜像拷贝方式备份。

2.3 激活归档进程

当数据库处于NOARCHIVELOG工作模式下,就只允许在结束数据库运行而且还得禁用联机重作日志的存档功能后才能进行数据库的备份操作,因此如果Oracle实例此时出现异常时,数据库就只能恢复到最近的完整的数据库备份时段上,不能够在失效点进行数据的恢复。但是如果设置在ARCHIVELOG工作模式下,数据库不光可以进行实时备份,还可以在数据库运行的情况下进行联机备份。通过数据库的备份和联机以及存档的重作日志文件,就能将数据库恢复到指定的时间日至系列号处,这样就大大的增加了恢复数据的灵活性,因此我们需要将数据库设置成ARCHIVELOG的工作模式。

参考文献

[1]李辉康.应用项目数据库应急备份与恢复方法的研究[J].西铁科技,2008(2).

[2]马和邦,周建中,赵萍.基于RMAN的Oracle数据库备份与恢复机制[J].计算机与数字工程. 2008(03).

[3]文瑞映.ORACLE数据库的备份与恢复[J].电脑知识与技术(学术交流),2006(23).

上一篇:浅谈伊春有线数字电视的前端 下一篇:浅谈黑客在C语言技术上的应用