oracle双机/RAC/Dataguard的区别

高可用性解决方案分为4种 (DG、AR、RAC、HA):

一种是oracle提供的被用方法,Standby (=9i DataGuard)

一种是AR (高级复制Advanced Replication,在以前版本叫快照snapshot)

一种是oracle并行服务器8i的OPS (9i RAC,Real Application Cluster)

一种是第三方HA解决方案(如Rose HA,故障切换时间是几分钟,也叫双机)

各自侧重点:

HA 侧重于业务的自动接管,自动接管需要几分钟时间,且长期有一组Instance闲置,浪费资源,不能容灾。

DG 侧重于容灾,独立存储,但两者数据不能做到实时同步。

RAC侧重于负载均衡,但共享存储不能容灾。

详细说明:

HA双机热备由两台计算机和一个共享存储设备构成,通过第三方软件(HA Rose等)实现切换,不需要做数据同步。

DG Data Guard 是oracle的远程复制技术,由两个多两个以上的独立的数据库构成,他们各自有各自的存储,Oracle负责他们之间的切换和数据同步,它需要在异地有一套独立的系统,两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,包括软件的版本,目录存储结构,以及数据的同步(其实也不是实时同步的),这两套系统之间只要网络是通的就可以了,是一种异地容灾的解决方案。

RAC本地的高可用集群,RAC是多节点,每个节点一个INSTANCE,是保证应用的,只要有一个节点是正常运行的,就能连接到数据库,每个节点用来分担不同或相同的应用,以解决运算效率低下、单节点故障这样的问题,它是几台硬件相同或不相同的服务器,加一个SAN(共享的存储区域)来构成的。

各自的应用:

如是业务不要求24x7,可以考虑用dg。一台机器用于生成报表和查询;一台只用于一般的业务处理。dg主要用容灾,双机、RAC均是提供可用性,但他们实现的方法不同,数据库均放在共享设备上。

双机就是人们所说的双机热备,数据库放在共享设备上,同一时刻只能有一台主机接管,另一台待用,这种方式只能保护实例,不能保护db,而且备机长期处于闲置,对资源是一种极大的浪费!

建议应用RAC+Dataguard ,RAC保证可用性,Dataguard在RAC组独立磁盘上和另外一台主机上,保证可靠性。

如果原本是双机,建议转换为RAC;规划好应用,DML操作从一个节点跑,查询操作从另一个节点跑,通常不需要太多调优就可以利用闲置的另外一台机器了。

RAC服务器共用一套存储,同时提供服务,没有主备之分,宕一个其它的可以继续服务;双机热备,共用一套存储,一个提供服务一个备份,主机宕了切换到备份服务器提供服务;data guard 完全两套系统,存储是单独的,用日志同步。

RAC:实例层冗余;

DG :数据库层冗余;

热备:仅仅只是数据冗余。

你可能感兴趣的:(dataguard)