双机容错环境下Oracle数据库应用

原创 2003年12月15日 14:56:00

目前许多建立和应用信息系统的企业,在系统应用不断改进的同时,开始注意提高企业信息系统的可用性和可靠性。通过双机容错系统为企业提供系统高可用性保障是目前企业普遍采用的方法。医疗机构工作性质的特殊性要求其信息系统7天×24小时不间断运行,采用双机容错方案为系统提供了高可用解决方案。本文将对医疗信息系统的双机容错环境下Oracle数据库应用做详细介绍。

系统配置

  该系统的硬件配置如下:

  主数据库服务器: 富士通Primergy MS-610服务器(双Xeon 700MHz CPU,1GB内存)。
  数据库备份服务器: 富士通Team Server C870ie GP5C875(双PentiumⅢ 700MHz CPU,1GB内存)。
  容错软件: 天地公司的SLHA 3.0软件包。
  磁盘阵列: IQstore R1500(带2个SCSI接口)。
  线路连接: 2台服务器用RS-232串口线和RJ-45网络线相连(如图1所示)。

 

  软件配置如下。
  操作系统: Windows NT Server 4.0
  服务器软件配置: Windows NT 4.0 Service Pack 5、Internet Explorer 5.0、Microsoft Data Access Component 2.0,Oracle数据库为7.3.3企业版。

  双机容错的实现

  1. 操作系统的安装

  我们用A机表示数据库服务器,用B机表示备份数据库服务器。首先在物理上将所需硬件设备连接好,分别在各自服务器上安装Windows NT Server 4.0操作系统及补丁包等。然后,进入磁盘管理器,将磁盘阵列划分为2个逻辑盘D和E,此时2台服务器都可访问磁盘阵列。

  2.Oracle数据库的安装

  先关闭B机,在A机上安装Oracle数据库,安装路径默认为D盘,归档日志放在E盘。安装完毕后,将Oracle的3个服务(此处SID为ORCL,所以3个服务就是OracleServiceORCL、OracleStartORCL和OracleTNSlistener)的启动方式改为手动并将此3个服务停止。注意: 改为手动的目的是为了让这3个服务由双机容错软件来启动,而不是由操作系统启动。

  然后,关闭A机,启动B机,格式化D盘,将刚刚由A机建立在磁盘阵列上的Oracle目录也格式化掉; 在B机上安装Oracle数据库,安装路径默认为D盘,安装完毕,同样将Oracle的3个服务的启动方式改为手动并停止3个服务。

  双机上安装Oracle的实质就是将Oracle系统分别装在2台服务器上,而数据只存储在磁盘阵列上。

  3.双机容错软件的安装及双机容错环境的建立

  双机容错软件的安装非常简单,只需启动A机和B机,在2台服务器上分别安装该软件即可。建立双机容错环境是将磁盘阵列上的D盘和E盘以及Oracle 的3个服务交由双机容错软件控制,并由双机容错软件进行切换。

  在双机容错软件SLHA的"Configuration"选项中将数据库服务器设为Active状态,即平时正常工作状态时,此时数据库服务器工作,备份服务器等待。当A机Active时,只有A机可以访问磁盘阵列,B机不能访问磁盘阵列。此时,Oracle数据库服务器实际上是A机,A机的IP地址就是Active IP Address,同时A机的主机名为Active Host Name; 当A机因故不能工作时,A机的状态会被"心跳线"侦测到,这时B机开始切换到Active状态,接管磁盘阵列,此时的Oracle数据库服务器改为B机,B机的IP地址就是Active IP Address,同时B机的主机名为Active Host Name。上述操作均由系统自动完成,实践证明切换所需的时间很快,对客户端的影响很小。

  需要注意的问题

  1.当在A机安装完Oracle数据库后在B机安装Oracle数据库时,一定要先将磁盘阵列D盘格式化,而不是只将D盘中已由A机安装的Oracle数据库删除,否则可能会出现意想不到的错误,例如Oracle侦听服务失败等;

  2.最终安装好Oracle数据库后,要对D:/Oracle/Orant/network/Admin/ Listener.ora文件进行修改,其中Server名称一定要改为Active host name Alias,如不进行修改将使客户端的Oracle数据库用户无法连接到Oracle数据库中。

  3.在Hosts文件中增加一条记录,使Active IP Address和Active Host Name相互对应,这样系统就会自动起到解析作用。Hosts文件位于c:/Winnt/ system32/drivers/etc目录下。

  4.要注意不到万不得已,不要强行切换,避免产生数据错误。如必须对双机进行切换,可先进入Svrmgr Oracle服务器控制台,用Shutdown命令关闭Oracle数据库,再进行切换。
  双机容错的原理

  图2为系统双机容错的示意图,从图2可以看出2台服务器共享一个外部存储设备,通过心跳检测的方法监听对方的工作状态,当一台服务器因为某种原因不能提供相应服务时,另一台服务器将启动相应服务功能,使主服务器提供的应用继续运行。

 

  图2中的2台服务器安装相同的操作系统(硬件配置不必相同),如Windows NT Server 4.0,每台服务器安装2块网卡。服务器的一块网卡连接交换机,与局域网相连(即图2中Public Net); 另一块网卡和对方服务器的一块网卡相连,构成Private Net; 同时2台服务器由串口线相连,2台服务器间相连的串口线和服务器之间的RJ-45网线共同构成2台服务器之间的"心跳线"。2台服务器就是通过心跳线来互相监听对方工作状态的。注意: 同时采用网线和串口线组成"心跳线"的目的是为了确保"心跳线"的冗余。图2中的Public Drives(即双机共享磁盘阵列)是2台服务器都可以访问的磁盘,它实际上是一台磁盘阵列柜,由六块SCSI硬盘组成。磁盘阵列通过SCSI电缆分别连向2台服务器。2台服务器共用一个Active IP地址和Active Host Name。当某台服务器Active(即激活)时,Active IP Address和Active Host Name就指向那台服务器。

  双机环境下的Oracle数据库机理

  Oracle数据库安装在磁盘阵列上(即图2中Public Drives),2台服务器都可以访问它,但不能同时访问。Oracle Server for NT主要提供3个服务:OracleServiceSID、OracleStartSID和OracleTNSlistener。在数据库服务器正常工作时,由数据库服务器控制磁盘阵列柜,此时只有该服务器可以访问磁盘阵列,该服务器上的Oracle服务处于启动(Active)状态,此时该服务器就扮演图2中Active Server的角色,备份服务器处于等待(Standby)状态,即图2中Backup Server。

  当数据库服务器发生故障不能工作时,双机容错系统会检测到数据库服务器的状态,从而使备份服务器自动激活,接管磁盘阵列并自动启动Oracle的3个服务,而对于客户端来说,只经历一个短暂的服务器重启过程,访问的数据仍是磁盘阵列中的数据。

  注意: 是双机容错软件而不是操作系统来控制Oracle 的启动和停止,即由双机容错软件来控制这3个Oracle服务的启动和停止,实现Oracle数据库在双机之间的切换。

[数据结构]双机调度问题

双机调度问题解法:1.问题描述 双机调度问题,又称独立任务最优调度:用两台处理机A和B处理n个作业。设第i个作业交给机器A处理时所需要的时间是a[i],若由机器B来处理,则所需要的时间是b[i]。现在...
  • napoay
  • napoay
  • 2015年12月12日 15:01
  • 2247

Win7(WinDbg) + VMware(Win7) 双机调试环境搭建之一

更多精彩内容,请见:http://www.16boke.com 环境: 主机:Win7 虚拟机:VMware 11.1.0 build-2496824 虚拟机内操作系统(又称GuestOS):Win...
  • one_in_one
  • one_in_one
  • 2016年06月24日 18:00
  • 1296

heartbeat实现MySQL双机高可用

对于一个网站或一个企业最重要的无疑就是数据,那么数据库的数据安全无疑就更加重要,所以我们必须保证数据库的数据完整,这里就介绍使用heartbeat来实现MySQL双机高可用. 当我们的MySQL数据...
  • u012804178
  • u012804178
  • 2015年03月11日 14:27
  • 613

冷备份与热备份、双机热备与容错

、冷备份与热备份、双机热备与容错 冷备份与热备份 一、 冷备份      冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置...
  • cs408
  • cs408
  • 2015年10月07日 12:52
  • 1346

SAPECC NW73 双机的安装及讨论

 James_lx Install date:2013/3/12 系统软件: SAP NW7.3 , NW 7.3 Kernel, Inst.Master, U...
  • ot512csdn
  • ot512csdn
  • 2016年07月19日 14:58
  • 775

VS2013双机调试环境配置

耗费了两天的时间,期间还找了前同事远程协助,才真正实现用VS2013来进行双机调试,期间各种不明所以,不过还是先记下来,不然就忘掉了。 先说一下配置: Host :win7 x64 开发环境 : ...
  • xingfu0539
  • xingfu0539
  • 2015年08月03日 18:22
  • 1191

oracle数据库双机安装

安装双机oracle数据库步骤和注意部分 1 在一台机器上安装好oracle数据库,安装时注意将数据文件(.DBF),控制文件(.ctl)和重做日志文件安装在共享存储下(如磁盘阵列) 2 在另一台机器...
  • liuvlun
  • liuvlun
  • 2014年11月30日 20:42
  • 1513

双机调度问题

求解流水作业调度问题的Johnson算法具体描述如下:  (1) 设a[i]和b[i](0 设n=4,(a0,a1,a2,a3)=(3,4,8,10)和(b0,b1,b2,b3)=(6,2,9,1...
  • qq_26091271
  • qq_26091271
  • 2016年06月30日 10:13
  • 677

spark学习笔记5 spark容错性

一般来说,分布式数据集的容错性有两种方式:数据检查点和记录数据的更新。 面向大规模数据分析,数据检查点操作成本很高,需要通过数据中心的网络连接在机器之间复制庞大的数据集,而网络带宽往往比内存带宽低得多...
  • qq1977261418
  • qq1977261418
  • 2016年09月12日 21:42
  • 270

我维护过的三套SAP双机总结

--------------第一套---------------- 宗申机车ERP生产系统,运维时间2001-2009,HP-UX,ORACLE8,SAP46C,双机软件MC-SG 总结: 第一套系统...
  • ot512csdn
  • ot512csdn
  • 2017年06月04日 20:08
  • 626
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:双机容错环境下Oracle数据库应用
举报原因:
原因补充:

(最多只允许输入30个字)