天天看点

Oracle CRS简介

从Oracle 10gR1 RAC 开始,Oracle推出了自身的集群软件,这个软件的名称叫做Oracle Cluster Ready Service(Oracle集群就绪服务),简称CRS。从Oracle 10gR2开始,包括最新的11g,Oracle将其更名为Clusterware(集群件),但通常意义上我们认为CRS = Clusterware = Oracle Cluster Ready Service = Oracle Cluster Software.

CRS一般用来搭建Oracle的并行数据库,即RAC,但除了与RAC的接口之外,CRS还提供了一组高可用性的应用程序接口(API),用来搭建一般应用程序的高可用集群,即一般我们常说的双机热备,比如使用CRS实现MySQL的双机热备。

Oracle10g CRS(Cluster Ready Services)是Oracle10g RAC的一个新特性,用以提供标准的群集服务接口。

在以前的版本中,Oracle RAC必须借助第三方Cluster软件,但是从Oracle10g开始,我们有了新的选择。

CRS就是这样一个替代产品,用以提供RAC环境中的群集服务。

CRS是一个单独的产品,在构建RAC环境中,需要单独安装。

(在Oracle刚推出CRS时,Oracle还没发明ClusterWare这个词。

所以最初的CRS就是指现在的Clusterware,如果你注意过的话最初Oracle的安装盘上装Clusterware的时候,都说的是CRS。

所以提到Cluster Ready Services,大家都知道指的是Oracle的Clusterware而不是crs daemon.

只不过从10gR2开始,ClusterWare被引入,CRS这个词的含义被Oracle偷偷的缩小了。)

系统启动以后,CRS会自动启动,启动主要由/etc/init.d中的几个脚本完成:

CRS启动的三个主要的后台进程为:

这几个进程的主要作用如下:

注意,ocssd进程在单实例ASM系统中也可以见到,以下是我的一个单实例ASM系统,ocssd进程同样存在:

ocssd进程非常重要,如果该进程异常中止,会导致系统crash。

在某些极端情况下,如果ocssd无法正常启动,会导致操作系统循环重启。这时候需要DBA介入进行一些特殊处理。(解决循环重启的问题是修改/etc/init.d/init.cssd文件,注释掉其中FAST_REBOOT语句)

我们可以通过CRS工具来查看CRS状态:

本文转自xiaocao1314051CTO博客,原文链接:http://blog.51cto.com/xiaocao13140/1930508 ,如需转载请自行联系原作者