Oracle数据库备份文件有效性检测设计方案
邱云飞;王雪;丁艺博;邵良杉
【摘 要】从Oracle数据库的备份文件是否有效的角度出发,针对企业往往只注重如何制定完善的生产数据备份设计方案,而忽视对备份数据有效性进行检测这一问题.依据备份检测原理并考虑实际生产环境,设计了Oracle数据库备份文件的有效性检测设计方案.最后,给出一个针对某实际企业资金管理系统数据备份有效性检测的案例.%Extending from whether an Oracle database backup file is valid, in view of the problem that enterprises usually only pay attention to how to design a perfect production data backup scheme but ignores the backup files validity testing, according to backup testing principles and in consideration of the actual production environment, the authors have designed an Oracle database backup file validity testing scheme. Finally they present a data backup validity testing instance targeting at a real enterprise fund management system. 【期刊名称】《计算机应用与软件》 【年(卷),期】2012(029)003 【总页数】4页(P94-97)
【关键词】Oracle;数据库;备份有效性;备份检测;恢复测试 【作 者】邱云飞;王雪;丁艺博;邵良杉
【作者单位】辽宁工程技术大学软件学院,辽宁葫芦岛125105;辽宁工程技术大学软件学院,辽宁葫芦岛125105;辽宁工程技术大学软件学院,辽宁葫芦岛125105;辽宁工程技术大学软件学院,辽宁葫芦岛125105 【正文语种】中 文 【中图分类】TP309.3 0 引言
企业业务数据是企业的重要财富,信息系统不可避免地受到来自外界的安全侵袭以及自然灾害、网络故障、硬件故障[1],对于业务来说,无论计算机系统故障还是丢失数据,都可能给企业造成不可估量的损失[2],因而制定能够保障企业数据安全的备份设计方案至关重要。
在系统运行和维护的初期,许多企业会投入大量精力制定完善的备份恢复设计方案,他们错误地认为,只要严格地按照备份设计方案进行备份工作,企业的数据就能够得到保障,使生产数据在遭受意外事故后快速地恢复。但他们并不去关心备份是否有效,常常导致在意外事故发生后,由于备份无效致使数据库不能恢复或恢复后数据丢失,给企业带来严重的损失。这说明仅仅有一个完善的备份设计方案和一味地按照这个备份设计方案进行备份工作是远远不够的,完整的备份工作还应包含备份数据的有效性检测。只有对备份数据进行有效性测试,数据安全才能真正得到保障。针对这种情况,企业应引入备份检测设计方案来保障企业数据的安全。
目前大多数咨询机构的数据都表明:中国企业的备份数据可用率还达不到50%。这一情况使国内用户在数据库恢复建设上处于较为落后的阶段,这说明对于备份数据的可用性方面企业还需要做很多工作。因此,要想“备份数据不可用”不成为企业自身的心头之痛,就必须具备完善的备份文件有效性检测设计方案。
1 备份检测原理
Oracle中备份数据主要包含两类:一类是逻辑备份数据,另一类是物理备份数据,其中以物理备份数据为主,逻辑备份数据通常作为辅助备份出现在备份设计方案中[1]。物理备份通常包含:参数文件、控制文件、数据文件和归档日志。备份检测设计方案主要是依据备份恢复设计方案和数据库实际的使用情况而制定的。备份数据的检测是通过对备份数据进行还原和恢复操作,根据还原和恢复的过程及结果来判断备份数据是否有效。 2 备份检测设计方案的制定 2.1 备份检测设计方案的制定原则
备份检测设计方案的制定要遵循如下的原则: (1)以备份恢复设计方案为依据。 (2)对生产数据库的影响最小化。 (3)能实现对备份数据有效性的检测。 (4)可扩展性。
2.2 备份检测设计方案的制定依据
制定完善的备份检测设计方案之前,要明确设计方案的制定依据[3],如下: (1)备份恢复设计方案决定了备份检测设计方案的初始方向。
(2)生产库的实际使用情况、企业的财力情况、专业维护人员的技术水平和应用系统的运行时要求共同影响了备份检测的方式。 (3)备份恢复设计方案影响备份检测频率的制定。
(4)检测日志主要的作用是用于记录备份检测过程的信息,是判断备份恢复测试是否成功和备份文件是否有效的依据。 2.3 备份检测设计方案的制定明细
备份检测设计方案基本组成元素包括:检测方向,检测方式、检测方法、检测频率
和检测日志。 (1)检测方向
备份恢复设计方案包括物理备份和逻辑备份。如果备份恢复设计方案中以物理备份为主,则恢复设计方案也必须以物理备份有效性的检测为主。如果备份恢复设计方案中无逻辑备份,则在备份检测设计方案中只针对物理备份的有效性进行检测。 (2)检测方式
检测方式分为联机检测和异机检测[4]。联机检测是指在生产库所在的库进行恢复检测,检测过程对生产库有一定影响。异机检测是指在生产库之外的库进行恢复检测,如果所使用的库与生产库位于不同服务器,则检测过程对生产库无任何影响。检测方式的确定关键而复杂,具体总结如下:
①应用系统运行时的要求对检测方式起到主导作用,如果应用系统是7×24小时业务系统并且任何时候都要求是高效运行的,则检测方式应定为异机检测(不同服务器);如果应用系统有明显的业务高峰期和低峰期,则检测方式可考虑定为联机检测。
②生产库实际使用情况也对检测方式起主导作用,如果生产库数据量是TB级别的,则检测方式应定为异机检测;如果数据库数据量是GB级别的,则检测方式可以参考应用业务运行时的要求选择异机检测或是联机检测。
③企业的财力情况往往起到决定性作用。在企业可承受的范围内,应为系统配备测试服务器用于备份检测工作。
④企业的专业人员技术水平只起到参考作用。如果企业专业人员技术水平有限,可以通过培训或是服务外包等方式达到最优备份测试方式的实现。 (3)检测方法的选择
检测方法是由检测方向和检测方式共同决定的。主要分为下面两种情况:
①如果对物理备份进行联机检测,则需要通过RMAN工具中的restore database
check logical validate和restore archivelog from logseq=xx until logseq=xx validate进行虚拟的还原恢复操作;如果对逻辑备份进行联机检测,则需要建立测试账户并利用IMPDP/IMP工具以用户模式的导入方式进行检测。
②如果对物理备份和逻辑备份进行异机检测,则需要通过RMAN进行异地还原恢复操作并且利用IMPDP/IMP工具进行用户模式的导入操纵来进行检测。 (4)检测频率的选择
当数据库完成备份后,需要对备份集做还原恢复操作以进行备份有效性的检测[5]。检测频率只能无限接近恢复设计方案的要求,而不能100%满足,这是由于恢复操作还需要用到部分未备份的归档日志(可通过数据库归档的多路径来提高归档日志文件的有效性)。 (5)检测日志记录过程
备份检测过程用于判断备份文件是否有效,而检测日志用于记录备份检测过程的输出信息。具体是通过文件重定向,将恢复检测脚本的输出信息记录到检测日志中来实现的。
3 备份检测设计方案定制案例
3.1 实践环境(某实际企业资金管理系统)
以某实际企业资金管理系统为例,资金管理系统的生产库服务器采用两台IBM P570并做了IBM的高可用性的应用架构,测试服务器采用IBM P550,3台服务器均挂接EMC存储和磁带库。具体实验环境如图1所示。 图1 某企业资金管理系统简易拓扑图 3.2 备份检测设计方案定制环境 (1)应用系统运行时要求
系统业务高峰期在白天,晚上9:00后基本无业务。 (2)企业财力状况
企业财力充足并十分重视业务数据的可恢复性。 (3)技术人员水平
企业中缺少此类技术人员,采用第三方专业维护人员外包的方式。 (4)数据库使用情况
数据库使用期1年,数据量为150GB。 3.3 资金管理系统备份设计方案
备份设计方案表主要包含了在系统的不同时期所应采用的备份方式和备份操作的频率及恢复要求等。此方案的备份设计方案表具体如表1所示。
表1 某企业资金管理系统数据备份设计方案表备份时期 备份方式 备份工具 备份存储位置及格式备份执行频率 备份恢复要求 备份保留时间备份文件异地备份某机房(跨省专线)每天都执行整个生命周期网络配置原格式归档日志备份 RMAN 带库文件备份 OS命令cp 磁盘阵列每次更改后进行备份能恢复上五次修改无压缩备份集每3小时 能恢复至前7天任一时刻 30天(保存至带库容许的最长时间)全备份 RMAN 带库物理数据量低于200GB压缩备份集 每天0点 能恢复至前7天任一时刻 30天(保存至带库容许的最长时间)用户模式逻辑备份 EXPDP 磁盘阵列.Z压缩 每天2点 能恢复至前7天任一天 7天物理0级带库星期六0点能恢复至前7天任一时刻备份物理1级RMAN数据量高于200GB备份物理2级RMAN压缩备份集带库星期二、五0压缩备份集带库能恢复至前7天任一时刻点30天(保存至带库容许的最长时间)RMAN 星期日、一、三、四0点能恢复至前7天任一时刻7天备份关键表逻辑备份EXPDP压缩备份集磁盘阵列.Z 压缩每天2点能恢复至前7天任一天
3.4 备份检测设计方案定制 (1)检测方向选择
因为备份设计方案中要求对数据库做物理备份和逻辑备份,所以检测方向定为对物
理备份和逻辑备份有效性的检测。 (2)检测方式选择
首先,由于企业的财力充足,在系统设计阶段就规划了测试服务器,所以无需考虑应用系统运行时的要求和数据库的实际使用情况,故采用异机检测方式;另外,由于系统在晚上9点后无业务,故对部分归档日志文件的检测采用联机检测方式。 (3)检测方法的选择
系统采用异机检测方式,并且针对物理备份和逻辑备份进行检测,检测方式定为rman异地恢复和EXPDP异地还原。 (4)检测频率的制定
根据备份设计方案,对物理备份的检测频率定为:每天在数据库物理备份结束后进行一次还原检测;对归档日志文件备份的检测频率定为:当天0点前进行联机可还原检测;对逻辑备份的检测频率定为:物理备份检测结束后对数据库进行一次逻辑恢复检测。
3.5 备份检测设计方案实施影响
文中所举案例是在无自然灾害的前提下成功应用了备份检测方案,其生产库的可恢复成功率达到了100%。即当成功应用备份检测方案后,在无自然灾难的前提下,生产库的可恢复成功率将达到100%。
然而,在没有备份检测设计方案的系统中,数据库的恢复成功率取决于备份方案的制定、整个备份系统的硬件级(底层IO和网络传输等)错误发生率以及数据库软件BUG发生率三个方面,这会导致恢复成功率达不到100%。由此可见,备份检测方案对企业数据的可恢复性起到了至关重要的作用。 4 具体恢复测试过程
4.1 物理备份恢复测试(异地恢复)
若使用备份数据成功将数据文件还原并且成功恢复数据库,则表明此备份数据有效
[6]。当恢复测试设计方案测试成功后,将恢复测试的过程写成脚本,通过操作系统自动任务的调用达到恢复检测自动化,从而减轻恢复测试的工作量。定时检查恢复测试日志能够确保恢复测试工作正常运行[7]。具体步骤如下: 步骤1 还原spfile参数文件
通过调用rman备份工具,分配连接磁带库的通道,将spfile从最近一次的备份集中还原到指定路径下。
创建可编辑的参数文件initxxx.ora,根据测试服务器目录结构进行相应更改,并使用编辑后的initxxx.ora参数文件创建新的spfile。
步骤2 还原controlfile
根据参数文件中控制文件的位置,将控制文件还原到相应路径下,并启动数据库到mount状态。
步骤3 还原datafile
对控制文件中原数据文件重命名以符合测试服务器的实际目录。
如果在此过程中由于备份无效而无法还原数据文件,则说明生产数据库备份失败,应立即对数据库进行手工全备份以保证数据安全。并且,备份后需重新对此备份集做备份恢复测试。
步骤4 还原archivelog
步骤5 恢复数据库
通过应用还原的归档日志,根据需要将数据库恢复到某一时刻的一致状态[8]。如果恢复过程中显示某归档日志由于损坏而不可用,并且生产库中还存在那个损坏的归档日志,则需要立刻对生产库的归档日志进行备份;如果生产库中不存在,则需要立刻对生产库进行全备份以防止在意外事故中丢失生产数据。
步骤6 打开数据库
此过程的完成,表示恢复测试的成功结束[9]。恢复测试中涉及到的备份数据均是有效的。当生产库由于意外事故而需要恢复时,这些经过验证了的有效备份数据将会为数据恢复提供保障。
4.2 归档日志文件的联机还原测试
4.3 逻辑备份恢复测试
在恢复测试服务器上使用IMPDP进行逻辑恢复检测,以验证逻辑备份的有效性。 步骤1 创建测试用户 步骤2 用户模式的恢复 5 结语
恢复测试是备份工作中不可缺少的一部分,利用恢复测试可以发现无效的备份数据并及时对相应数据进行备份,以降低数据丢失的风险和提高数据的安全性[9]。运行实践表明,文中设计的某实际企业资金管理系统数据备份有效性检测方案相对完善,可以实现企业数据库备份数据的有效性检测。 参考文献
[1]张云帆.Oracle数据库备份与恢复策略[J].计算机工程,2009,35(15):85-87.
[2]劳眷.灾难备份和恢复技术及解决方案分析[J].计算机应用与软件,2005,22(3):120-121.
[3]王海亮.Oracle 11g管理备份恢复从入门到精通[M].北京:中国水利水电出版社,2008.
[4]王淑江.网络存储数据备份与还原[M].电子工业出版社,2010. [5]王改性.数据存储备份与灾难恢复[M].数据存储备份与灾难恢复,2009. [6]盖国强.循序渐进Oracle数据库管理、优化与备份恢复[M].人民邮电出版社,2007.
[7]张晓明.大话Oracle RAC集群高可用性备份与恢复[M].人民邮电出版社,2009.
[8]Lone K.Oracle Database 10g:The Complete Reference[M].北京:清华大学出版社,2006.
[9]Freeman M H G.Oracle Database 10g RMAN Backup& Recovery[M].美国:美国麦格劳-希尔教育出版公司,2008.