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

Oracle 11g RAC维护参考

RAC集群,全称Real Application Clusters,译为“实时应用集群”,是Oracle提供的一种

高可用、并行集群系统,RAC除了具有高可用能力还有负载均衡能力,整个RAC集群系统

由Oracle Clusterware (集群软件)和 Real Application Clusters(RAC)两大部分组成。

1 硬件环境

RAC集群的硬件环境包括主机、共享存储、网络设备。

1.1 主机(节点)

RAC集群环境中至少有两台主机,也就是两个节点,每个节点配置一样的硬件,至少配

置两块物理网卡。

1.2 网络设备

网卡,每个RAC集群节点上至少配置两块物理网卡。一块网卡用于集群内部的私有通

信,集群节点间数据块的传输都是通过这块网卡,我们称之为私有网卡,IP别名Private IP;

另一块网卡用于对外服务,比如数据库的查询等,我们称之为公有网卡,IP别名Public IP。

除此之外,每个节点还有第三个VIP(Virtual IP)的IP。RAC集群正常运行时,每个节点

的VIP会被分配到公有网卡上,当某个节点出现故障宕机时,这个节点的VIP会被移到其

它正常运行节点的公有网卡上。

网络交换机,首先,用于连接所有节点的公有网卡以提供对外的数据库服务,其次,用

于连接各个节点之间的私有网卡以传递集群节点之间的心跳数据和数据库数据块(Cache

Fusion)。

1.3 共享存储

在RAC集群中,最重要的是共享存储,RAC是一个“多实例、单一数据库”的架构,

所有的节点共享一个数据库。数据文件、联机日志、参数文件、控制文件存放在共享存储上

以保证每个节点的实例都能访问。每个节点安装HBA卡,然后通过光纤线和存储设备连接。

2 软件环境

RAC集群的软件组成包含:操作系统、集群软件、数据库软件。

2.1 操作系统

每个节点上所安装的操作系统必须是相同版本的。

2.2 集群软件

Oracle Clusterware(统称为CRS/Cluster Ready Service)集群软件,负责管理整个集群环

境中的硬件资源,并为上层的RAC集群提供基础服务。它与上层应用(例如数据库)的关

系类似于单机环境中操作系统和应用程序的关系。单机环境下,OS能代理应用程序对硬件

访问,但是在集群中有多台计算机,把整个集群想象成一台虚拟的计算机,那集群件就是这

台虚拟计算机上的操作系统,RAC是运行在它上面的一个应用程序。

Oracle 11g Clusterware集群软件为GI(Oracle Grid Infrastructure),由磁盘文件、后台进

程、网络组件组成。

2.2.1 磁盘文件

OCR(Oracle Cluster Registry)保存RAC集群的配置信息,整个集群只有一份配置,所

有节点共享,配置信息以“Key-value”的形式保存其中。当集群配置需要发生改变时,每个

节点都有一个OCR Process来读取OCR Cache中的内容,而只有一个节点(OCR Master)

有权限读写OCR Disk的内容,然后同步到本地和其他节点的OCR Cache。

Voting Disk记录各个节点的状态,以防在某个或某几个节点出现问题时,决定哪部分节

点具有集群的控制权,而把其他节点从集群中剔除,从而能够继续正常地对外提供服务。

2.2.2 后台进程

其中最重要的三个进程是CSSD、EVMD 、CRSD,对应CSS、EVM、CRS服务,而

每个服务又是由一系列的模块组成。

OCSSD进程是Clusterware最关键的进程,如果出现异常会导致系统重启,这个进程提