金橙科技方正珠海多层公司热备容灾方案

      客户背景

      珠海方正科技多层电路板有限公司(以下简称“方正多层“)成立于1986年,是方正科技集团股份有限公司控股的中外合资企业。公司总资产额6100万美元,主要生产双面、多层(含盲埋孔)及HDI印制电路板,产品广泛应用于通讯、计算机、家用电器、工业仪器、汽车等精密电子产品。公司现有职工1200人,年生产能力为30万平方米,年销售额为5亿元人民币。


       客户需求分析

       一、用户当前容灾系统
 




       主服务器:IBM RS6000,CPU为2个,内存为 2G;
       备服务器:IBM RS6000,CPU为2个,内存为 2G;
       主备服务器操作系统:AIX 5.3  
     
       网络:主备机之间是10M VPN,两地的应用服务器与数据库服务器接在同一交换机,终端用户通过VPN、LAN、WAN 访问应用服务器;

       数据库版本:Oracle 10g

       Data Guard物理备用数据库,最大性能模式,传送归档日志文件,主备数据库相差3个日志文件;

      二、用户当前容灾系统问题:

       1、容灾系统使用不灵活,必须主备机操作系统和数据库配置必须完全一致;
       2、容灾系统的主备库数据差量太大(采用传送归档日志,相差3个日志文件),发生灾难后数据损失很大;
       3、无测试环境,当前容灾系统可行性值得怀疑:
        1)从未从主服务器切换到备用服务器
        2)如果主服务器坏了但主数据库未损坏,切换到备用服务器,主服务器恢复回来后,切换回来后难以保证数据一致性?


      金橙科技DB Guard热备容灾解决方案

      一、方案设计

      根据用户目前的业务需求和未来的发展需求,我们建议用户的数据复制系统整体规划如下:
 



      二、 方案描述

      1、容灾软件

       采用 金橙科技自主研发数据库热备容灾软件DataKing DB Guard,简称DB Guard。

      DB Guard主要功能:

      对生产数据库的秒级热备, 备库的自动初始化,生产数据库灾难后自动恢复,秒级的主备库切换时间。


     2、热备容灾系统简单描述

     1、创建备用数据库服务器;
     2、安装配置DB Guard软件;
     3、在DB Guard控制台上分别为ERP、OA、物流数据   库各配置一个主数据库复制数据到备用数据库的任务;再分别为ERP、OA、物流数据库各配置一个备用数据库复制数据到主数据库的任务;
     4、使用DB Guard自动进行主备库初始同步;
     5、初始同步完成,运行主库到备库复制数据的任务,启动主备库实时同步功能;
     6、主库数据变化,DB Guard实时捕获主库事务,并应用到备库,保持主备库数据一致。


     用户常见问题

     1、备用服务器初始化
      1)最初无备用数据库服务器

      解决方法:
     1、需要从主数据库的最新备份来创建,然后使用DB Guard进行主备库初始同步,初始同步完成后启用实时热备。
     2、完全从主库进行初始化,直接使用DB Guard自同动初始化功能实现主备库初始同步,初始同步完成后启用实时热备。


      2) 最初有备用数据库服务器

       解决方法:

      1、将备用数据库服务器更改为可读写状态,直接使用DB Guard进行主备库初始同步,初始同步完成后启用实时热备。


      2、主服务器暂停维护

       主服务器暂停维护是属于计划内的维护,在维护期间,根据维护时间长短可以采用如下策略:

       短时间维护:

       暂停业务,不用切换到备用数据库,几钞钟后再进行主数据库维护,此时主备系统之间的数据完全一致;维护完成后再启用业务。
       长时间维护:

       暂停业务,几秒钟后再切换到备用数据库,确保了主数据库所有事务都传到备用数据库中,因此使用备库时,主备库数据完全一致;完成主数据库维护后,直接从备用数据库恢复,恢复完成后再切换回主数据库。


      4、VPN网络故障

      如果主备数据库之间的网络断了,网络恢复后,如何再次保证主备机之间同步?
网络故障:网络故障不会影响主备数据库服务器正常运行,不会导致主数据库服务器,不用切换使用备用服务器。可能会影响部分用户访问主服务器。

      解决方法:

      断点续传功能:DB Guard会记录下网络断开时的事务状态,当网络恢复后,会接着断开时刻的状态进行主库到备库的热备任务,从而保证了主备数据库数据一致