APP下载

基于Orac1e Data Guard的数据灾备系统设计和实现

2010-03-05常俊超河南省水利信息中心

河南水利与南水北调 2010年6期
关键词:容灾日志备份

□常俊超(河南省水利信息中心)

一、前言

在信息技术飞速发展的今天,河南水利系统信息化建设的发展也是突飞猛进。河南省防汛指挥决策支持系统、水利电子政务等系统的建设和应用,提高了广大职工的工作质量和工作效率,各应用系统的数据也陆续从各市水利局、水情分中心集中到省水利厅。系统数据的集中,更加有利于数据的管理、共享以及数据的挖掘、分析、应用,但也对数据的安全性提出了更高的要求。

数据信息和数据处理的集中,以及不可预见的故障和灾难,导致各个应用系统存在很多灾难性破坏的隐患。因此,对数据信息的灾难防范是我们必须重视并重点解决的问题。

二、灾备系统的设计和实现

数据的远程实时复制是实现灾备的前提,数据复制是通过对应用系统数据的不断“复制”,实现对数据的实时“冗余”,从而保证在灾难发生和系统数据被毁坏时,数据可以立即被访问,而且丢失量极少。数据复制技术保护应用系统数据的在线状态,保证数据可以随时被访问。

数据复制实现的主要架构可分为基于智能存储设备的数据复制,基于逻辑磁盘卷的数据复制,基于应用程序的数据复制和基于数据库的数据复制。

(一)基于数据库的数据复制

基于数据库的数据复制是通过数据库系统软件,来实现数据库的远程复制和数据同步,其实质是实现主、备用系统的数据库的数据同步(实时或者准实时同步),即将主用系统数据的增量操作实时或者周期性地复制到备用系统数据库中,实现二者数据的一致性。

远程数据库复制需配置数据库远程复制管理软件,并具备主、备用系统间的网络通信条件(例如TCP/IP通道)。远程数据库复制的容灾备份方案中主、备系统的服务器主机类型、存储设备类型可以不一样。对数据库的操作访问基于开放接口时,也能够实现异种数据库之间的互为复制备份。

基于数据库的数据复制技术对主机的性能有一定影响,同时会增加磁盘存储要求,但对硬件设备和网络带宽的要求不高,不需要对应用系统程序做任何修改,系统运行恢复较简单,实时复制时数据一致性较好。对数据一致性要求较高、数据修改更新较频繁的应用可采用此方案。

0rac1e数据库是世界上最优秀的数据库之一,其卓越的性能得到了用户的普遍认可,应用日益广泛。利用Orac1e自身提供的Data Guard功能,通过数据库归档日志远程复制,将应用系统的数据库日志文件传送到远程灾备中心数据还原数据库系统的归档目录下,通过日志同步两端的数据库,从而达到数据级远程容灾的要求,是一种数据库级别的容灾方案。

(二)0rae1e 9iDataGuard日志自动传输

在Orac1e 9i数据库中,当在线重做日志满或满足其它归档条件后,就会有专门的归档进程将在线重做日志进行归档。并且在归档时,如果设置了远程归档,则归档进程就会先把在线重做日志文件归档到远程容灾中心,然后再进行本地数据库的归档,远程的归档总是排在本地归档的前面。

Orac1e9i提供的参数,诸如timeout、reopen等参数仅仅能够控制网络不能连接或中断的情况。若出现不可预料的问题,例如:网络堵塞而导致传输速度过慢或者远程容灾中心数据还原数据库主机上归档日志目录读写访问过慢等情况。如果出现这种情况,由于远程归档迟迟不能完成,所以本地也不能进行归档,从而导致在线重做日志归档速度过慢,或者归档进程僵死,当所有在线重做日志文件都填满或所有归档进程都处于僵死状态时,数据库系统就会被挂起,从而停止运行,对应用系统造成严重的影响。这样与我们最大限度保证应用系统稳定运行的原则是相悖的,是我们所不能接受的,因此我们改用FTP方式来进行归档日志文件的远程传输。

(三)FTP方式进行归档日志远程传输

由于Orac1e 9iDataGuard日志自动传输存在缺陷,不能满足我们对系统的要求,所以改为用FTP的方式来进行归档日志远程传输。

首先,修改数据库系统参数,关闭数据库的自动远程归档功能。

其次,编写FTP脚本,判断容灾中心数据还原数据库所需要的归档日志的序列号,然后将对应的日志文件从主数据库传送到数据还原数据库系统。

由于主数据库使用RMAN进行了备份,其归档目录下的归档日志文件每隔一段时间就会被清除,为了防止在FTP传输归档日志时出现序列号中断(如果出现归档日志不连续,则数据还原数据库的还原将会失败),我们在应用系统服务器上建立一个归档日志的备份目录,定时将归档目录下的归档日志文件拷贝到备份目录。这样当FTP脚本在归档目录下找不到自己所需要的归档日志时(即出现了归档日志序列号中断),就去备份目录寻找所需的归档日志,然后传输到数据还原数据库进行数据库的还原。

(四)远程传输模块的实现

编写FTP脚本,实现归档日志文件的远程传输

FTP脚本如下:

(五)异地恢复、查询模块

异地恢复、查询模块的功能分为2个部分,一部分是对应用系统数据库数据进行还原、重现,另一部分是提供数据查询功能。

数据还原服务器通过远程传输模块获取远程的归档日志文件,并利用Orac1e 9i数据库的Data Guard功能对数据库数据自动进行还原。在数据还原过程中,数据库一直处于standby状态,并没有完全打开,这时的数据库是不能进行查询等相关操作的。

对应数据还原服务器和查询服务器在存储上的存储空间,每隔一段时间就会进行一次从数据还原服务器到查询服务器的数据快照刷新,从而达到双方数据的一致。查询服务器的数据库是一直处于OPEN状态,可对其数据进行查询等操作。这样既可以监控数据恢复的进度和状态,又可以提高数据的分析、利用效率。

当应用系统数据库遭到破坏,启动查询服务器临时作为应用系统数据库,从而保证了系统在很短的时间内恢复运行。利用查询数据库数据对应用系统数据库进行恢复,保障了系统数据的安全。应用系统数据库数据恢复后,系统进行再次切换,恢复正常运行状态。

三、结语

本文采用基于Orac1e Data Guard功能的数据复制技术,实现了异地数据容灾功能:对Orac1e 9iDataGuard远程日志传输存在的缺陷进行了改造,改用FTP技术来进行远程归档日志文件的传输,克服了原有传输技术不稳定、对应用系统影响大的缺点。

容灾系统的建设不仅仅是技术问题,而是一个系统的工程。一个完备的容灾系统方案除技术因素外还存在制度因素,必须加强管理,根据自身情况制定日常备份制度和灾难恢复措施,并定期进行灾难恢复演练,才能使容灾技术方案充分发挥作用。

猜你喜欢

容灾日志备份
“备份”25年:邓清明圆梦
一名老党员的工作日志
扶贫日志
创建vSphere 备份任务
游学日志
关于建筑企业容灾备份系统方案的探讨
基于中兴软交换的电力通信网络容灾系统建设
旧瓶装新酒天宫二号从备份变实验室
基于数据容灾技术在企业信息系统中的应用研究
爱立信HDBSC容灾方案的研究