2024年3月31日发(作者:)

Oracle RAC集群体系结构

一、 Oracle集群体系结构

Oracle RAC,全称是Oracle Real Application Cluster,即真正的应用集群,是oracle

提供的一个并行集群系统,整个集群系统由Oracle Clusterware (集群就绪软件)和 Real

Application Clusters(RAC)两大部分组成。 oracle RAC的实质是位于不同操作系统的

Oracle实例节点同时访问同一个Oracle数据库,每个节点间通过私有网络进行通信,互

相监控节点的运行状态,oracle数据库所有的数据文件、联机日志文件、控制文件等均放

在集群的共享存储设备上,而共享存储设备可以是RAW、ASM、OCFS2等,所有集群节

点可以同时读写共享存储。Oracle RAC的基本拓扑结构如下所示:

由拓扑结构可知:一个Oracle Rac数据库有多个服务器节点组成,每个服务器节点上

都有自己独立的OS、ClusterWare、oracle Rac数据库程序等,并且每个节点都有自己的

网络监听器。ClusterWare是一个集群软件,主要用于集群系统管理,oracle Rac数据库

程序用于提供oracle实例进程,以供客户端访问集群系统,监听服务主要用于监控自己的

网络端口信息,所有的服务和程序通过操作系统都去访问一个共享存储,最终完成数据的

读写。共享存储的实现方式有很多种,可以通过使用自动存储管理(ASM)、Oracle集群

文件系统(OCFS)、裸设备(Raw)、网络区域存储(NAS)等来保证整个集群系统数据

的一致性。从Oracle10g起,Oracle提供了自己的集群软件,即Oracle clusterware,

它通过CRS(即Cluster Ready Services)来实现,这个软件是安装oracle rac的前提,

也是RAC环境稳定运行的基础,在oracle10g之前的版本,安装RAC时必须借助与第三

方的集群软件,而在oracle10g以后,安装oracle rac时,可以用oracle自带的集群软

件,也可以使用经过RAC认证的第三方集群软件来代替。从oracle的运行机制来说,集

群中每台服务器就是一个oracle实例,多个oracle实例对应同一个oracle数据库,组成

了oracle数据库集群。请看下图: