從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 ,如需轉載請自行聯系原作者