Oracle数据库双机热备方案1.方案综述OracleFailSafe是架构在MicrosoftClusterServer(MSCS)上的一个Oracle产品,为Oracle的一些产品(数据库、OracleApplicationServer等)提供高可用性。提供数据、应用程序在出现故障的情况下,将Oracle数据库自动转换到另一个激活的系统上,保证系统的高可用性。2.群集服务器安装核对清单2.1硬件配置·两台联想万全T350服务器,每台机器具体配置如下:CPU两颗CPU:Xeon1.8G/512K网卡每台服务器都有两块Intel82550网卡单模组,不需要冗余电源·一台SCSIUltra160磁盘柜2.2软件配置·Windows2000中文版(集群中所有机器上进行安装)·MSCS群集软件(集群中所有机器上进行安装)·Oracle8.1.6或者Oracle9.0.1.0.1(集群中所有机器上进行安装)·OracleFailSafe(集群中所有机器上进行安装)·GAM5.02.3硬件环境硬件环境配置如下:这是一个两节点群集,每台服务器有两块网卡,一块作为内部连接,用于服务器之间的心跳线和数据镜像传输;一块连接到外部网上。3.安装使用指南3.1安装Windows2000(两台及其均安装)1.相关参数配置参见下表:表1群集安装实验参数表服务器名NS1NS2公用网络IP1192.168.34.1192.168.34.2公用网络子网掩码255.255.255.0255.255.255.0专用网络IP192.168.33.1192.168.33.2专用网络子网掩码255.255.255.0255.255.255.0集群虚拟IP192.168.34.3集群虚拟名FsclusterFailSafe数据库虚拟IP192.168.34.3集群虚拟IP子网掩码255.255.255.02.ping所有IP地址以确保连接正确。3.2安装GAM5.0磁盘管理软件1.在Windows中添加一个具有administrator权限的用户gamroot;2.在其中在其中一台机器上安装磁盘管理软件GAM5.0;3.利用GAM管理工具对磁盘进行划分,此处划分为E:、F:和G:。关于GAM的使用方法详细参见相应文档。3.3安装MSCS打开主服务器,关闭从服务器。在主服务器上安装MSCS。安装成功后,保证在主服务器开启的情况下,在从服务器上安装MSCS。详细安装参见相关文档。安装成功后测试,保证MSCS安装成功。3.4安装Oracle在主服务器上安装Oracle,选择自定义安装,安装过程不创建数据库,安装结束重新启动主服务器;在从服务器上安装Oracle,选择自定义安装,安装过程不创建数据库,安装结束重新启动从服务器。3.5创建数据库在主服务器上创建要添加到集群中的数据库。注意Control文件、redologfiles和datafiles必须创建在磁盘柜的共享分区上;初始化参数文件也要放在磁盘柜上,如果是Oracle9.0.1.0.1,选择不生成永久初始化文件,安装结束后,将初始化文件放入共享磁盘柜中,然后在注册表中修改,将HKEY_LOCAL_MACHINE|SOFTWARE|Oracle|HOME0|ORA_HA1TEST_PFILE,修改为在磁盘柜上的目录,例如I:\initha1test.ora。3.6安装FailSafe在主服务器上安装FailSafe3.2,安装完重新启动主服务器;再在从服务器上安装FailSafe3.2,安装完重新启动从服务器。注:在安装完failsafe后,Windows2000中的群集管理器中群集配置–〉资源类型–〉下会出现两个资源类型:OracleDatabase和OracleTNSListener,两者使用的资源DLL都是FsResOdbs.dll。3.7修改hosts文件在两台机器上修改文件c:\winnt\system32\drivers\etc\hosts如下:192.168.34.1ns1(节点1的外部连接)192.168.34.2ns2(节点2的外部连接)192.168.33.1san1(节点1的内部连接)192.168.33.2san2(节点2的内部连接)192.168.34.3fscluster(MSCSCluster的别名,也就是虚拟IP的别名)192.168.34.4ha1test(Oracle集群使用的IP和网络名称)3.8集群配置1、打开OracleFailSafeManagerStart-Programs--OracleFailSafeManager打开后出现AddClustertoTree对话框,在该对话框里输入CLUSTER名称,会提示输入在域里有管理权限的用户名和密码;输入后会出现VerifyCluster对话框,对该集群各项资源进行有效性验证;2、在每台节点机上检查是否有服务OracleMSCSServices,并启动该服务;3、在每台节点机上启动集群管理器(启动-程序-管理工具-集群管理器),在ClusterGroup检查是否有OracleServicesforMSCS这一项;并检查ResourceTypes中是否有OracleDatabase和OracleTNSListener。4、在OracleFailSafeManager中的Groups菜单里选择Create;打开CreateGroupWizard后可以设置failover和failback策略,并自动打开AddResourcetoGroupWizard可以向组添加virtualaddress(选择Resources,然后AddtoGroup)。首先选择菜单:出现界面,输入组名:点击下一步,选择是否failback。点击下一步,选择优先级别:按完成结束组的创建。5、在Troubleshooting菜单上选择VerifyStandaloneDatabase验证Oracle数据库以及OracleNet配置,该命令确认OracleFailSafe可以访问数据库,并且standlone数据库位于共享分区上;6、在Resources菜单上选择AddtoGroup,然后选择OracleDatabase打开AddResourcetoGroupWizard,该向导用来将single-instanceOracledatabaseserver配置为基于MSCS的高可用性数据库服务器;选择菜单:出现界面,选择OracleDatabase:出现配置集群界面:安装成功后,出现如下图提示,则安装成功完成。安装成功后,关于数据库在注册表中的配置,从服务器上的注册表将会自动和主服务器同步。注:在FailSafe里添加组grptest并将数据库群集添加后,在群集管理器里也增加了该组,组包含的内容有:IPAddress192.168.34.4、NetworkNamefscluster、DiskE:、F:OracleOraHome81TNSListenerFslfscluster和HA1TEST.mjlab.com(数据库实例名)3.10测试从主机切换到从机,切换时间为50秒,应用程序略有停滞感,切换成功后应用恢复正常。非正常关掉主服务器,可以正常切换,切换时间为57秒,应用程序略有停滞,切换成功后应用恢复正常。拔掉主机应用网线之后,可以正常切换,切换时间为50秒,应用程序略有停滞感,切换成功后应用恢复正常。