《军队疗养院信息管理系统》中Oracle数据库备份与恢复策略

2010-02-17 11:04王雷,周晓明,肖征
中国疗养医学 2010年11期
关键词:疗养院信息管理系统日志

《军队疗养院信息管理系统》中Oracle数据库备份与恢复策略

310002 南京军区杭州疗养院海勤疗养区 王雷 周晓明 肖征

从保障数据库安全的角度出发,探讨Oracle数据库备份与恢复在《军队疗养院信息管理系统》维护中的应用,通过使用恢复管理器(Recovery Manager,RMAN),制定合理的备份策略,实现数据库的完全备份与恢复,解决了Oracle数据库因计算机系统故障引起的数据损坏或丢失等问题。

Oracle数据库;恢复管理器;备份;恢复

《军队疗养院信息管理系统》在全军各疗养院的推广应用,极大地提高了各疗养院的疗养管理效率,其中Oracle作为该系统的后台数据库发挥了重要作用。随着医疗数据的日益增加,对Oracle数据库的安全稳定运行提出了更高的要求,但是无论数据库系统如何配置和优化,都不能确保数据库系统绝对安全稳定。当数据库遭到破坏时,数据库管理员必须利用数据库备份对数据库进行及时有效地恢复,确保数据安全。因此,数据库的备份与恢复是数据库管理员的重要职责。

1 备份与恢复概述

1.1 数据库备份 数据库备份是对数据库物理结构文件,包括数据文件、日志文件和控制文件的备份。Oracle数据库有物理备份和逻辑备份两种备份方法,其中物理备份又分为冷备份和热备份。

1.2 冷备份 冷备份通常是在数据库正常关闭后,对其使用过的各个文件都进行备份,这些文件构成数据库关闭时的一个完整印象,通常而言,冷备份是最快和最安全的方法[1]。但是冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。

1.3 热备份 热备份是指当数据库打开时,对数据库进行的物理备份,这种备份方式称为联机备份,热备份要求数据库运行在归档方式下。热备份可以通过Oracle提供的可视化工具实现,也可以通过预先创建好的命令文档实现。

1.4 逻辑备份 逻辑备份利用Oracle提供的Export命令将数据从数据库中提取出来,生成一个二进制的导出转储文件,此文件包含完全重建全部所选对象所需的命令,与热备份相同,系统不必为逻辑备份而关闭。

1.5 数据库恢复 数据库备份的目的是为了数据库发生故障后能及时恢复,数据库恢复根据故障类型分为实例恢复与介质恢复。实例恢复将数据库恢复到故障之前的事务一致状态;介质恢复主要用于因介质故障引起的数据库文件破坏时使用。根据数据库备份性质,Oracle提供了两种不同的恢复模式——完全恢复与不完全恢复。完全恢复要求数据库在归档方式下运行,可以恢复全部丢失的数据,使数据库恢复到最新状态;不完全恢复是指将数据库恢复到故障之前的某个时间节点。

2 RMAN原理及配置

2.1 RMAN原理 RMAN是Oracle公司在Oracle 8.0以后推出的数据库备份与恢复工具。RMAN通过自动启动操作系统进程将数据备份到磁盘或磁带上。与常用的物理数据库备份、逻辑数据库备份不同,RMAN使用数据库对数据库进行备份的原理,RMAN必须运行在一个数据库上,在RMAN数据库中存储了对于远程数据库的备份信息,它有自身的语法形式,可以通过命令行方式或企业管理器控制台图形方式控制,提供第三方介质管理,极大地简化了备份与恢复流程。

2.2 RMAN配置步骤及示例 ①创建一个恢复数据库并在该数据库中创建恢复目录所用表空间,示例如下:SQL>create tablespace rmants datafile'c:oracleoradata mants.ora’。②在目录数据库中创建RMAN用户并授权,示例如下:SQL>create user rman identified by rman default tablespace rmants temporary tablespace temp quota unlimited on rmants;SQL>grant recovery_catalog_owner to rman。③在目录数据库中创建恢复目录,示例如下:RMAN>create catalog tablespace rmants。④注册目标数据库到恢复目录,示例如下:RMAN>connect catalog rman/rman@cc;RMAN>connect register system/manager@aspsrv;RMAN>register database。

3 RMAN备份策略及示例

3.1 RMAN备份模式 RMAN提供了两种备份模式:完全备份、增量备份。完全备份包括了所有有数据的数据块;增量备份仅备份上一次同一级别或更低级备份被修改过的数据块,有两种方式:DIFFERENTIAL(差异)和CUMULATIVE(累积),默认情况下RMAN创建的增量备份是DIFFERENTIAL方式,执行增量备份时必须首先执行基础备份(0级备份),增量备份因备份数据量较小,占用较少的网络带宽和较低的存储空间,成为实施策略备份的主流。

3.2 策略制定 根据《军队疗养院信息管理系统》中Oracle数据库的特点,采用DIFFERENTIAL方式,在周三、日对数据库进行0级备份,在周一、二、四、五、六对数据库进行1级备份[2],这样无论数据在哪一天发生故障,都可以利用备份文件、归档日志文件及联机日志文件对数据库进行完全恢复。备份策略的实施(图1)。

主要实现代码示例如下[3]:①0级备份 (每周日、三用 ):run{allocate channel d1 type disk;backup incremental level=0 databaseformat ‘d:/db_%d_%s_%p_%t‘tag=‘WHOLE_INC0’;}②1级备份(每周一、二、四、五、六用):run{allocate channel d1 type disk;backup incremental level=1 database format ‘d:/db_% d_% s_% p_% t‘tag=‘WHOLE_INC1’;}

3.3 RMAN备份确认 备份确认是保证数据库是否成功进行了备份,一般可以通过RMAN提供的LIST命令对数据文件、控制文件、日志文件的备份进行确认。

4 RMAN恢复策略及示例

RMAN恢复是将一个失效的数据库调整返回到有序的工作状态的过程,根据数据的故障性质及恢复的实际需要,可以对数据库进行完全恢复或不完全恢复。RMAN通过还原(Restore)与恢复(Recover)这两个命令对数据库进行恢复。

4.1 完全恢复 完全恢复是将数据库恢复到故障发生前的那一刻,在利用RMAN进行完全恢复时,所有在线和归档重做日志文件的记录都会被用来恢复数据库,从备份中恢复已经损坏的文件,然后应用日志文件将该数据文件恢复到当前的时间点,代码示例如下:run{allocate channel d1 type disk;restore controlfile;restore database;recover database;}

4.2 不完全恢复 不完全的恢复首先还原在期望恢复的时间点之前进行备份集,并且在这个时间之前的备份是可用的,不完全恢复意味着整个数据库必须被还原到以前的某个时间点,包括控制文件,有效地执行时间点恢复的技巧在于set命令的设置,代码示例如下:run{set until time “TO_DATE(‘02/10/2010 12:02:10’,‘MM/DD/YYYY HH24:MI:SS’)”;allocatechanneld1 typedisk; restore database;recover database;alter database open resetlogs}

5 结束语

Oracle数据库管理员在掌握RMAN备份与恢复原理及常用的命令后,通过制定合理的备份与恢复策略,可以确保数据库发生故障时能够及时完全恢复,保障数据库的安全稳定。

[1]滕永昌.Oracle9i数据库管理员使用大全[M].北京:清华大学出版社,2004:589-598.

[2]张云帆.Oracle数据库备份与恢复策略[J].计算机工程,2009,35(15):85-87.

[3]曹美琴.基于RMAN技术的Oracle数据库备份恢复研究[J].安徽大学学报:自然科学版,2007,32(2):25-28.

1005-619X(2010)11-0980-03

2010-04-17)

猜你喜欢
疗养院信息管理系统日志
“小、快、灵”立法的唐山实践——《唐山市截瘫疗养院保护利用条例》正式实施
三维可视化信息管理系统在选煤生产中的应用
信息管理系统在工程项目管理的应用
一名老党员的工作日志
扶贫日志
加拿大一疗养院31名老人被饿死
基于三维TGIS的高速公路综合信息管理系统
SaaS模式下的房地产中介公司信息管理系统
雅皮的心情日志
游学日志