OCR就好比Windows的一個(gè)注冊(cè)表,存儲(chǔ)了所有與集群,RAC數(shù)據(jù)庫(kù)相關(guān)的配置信息。而且是公用的配置,也就是說(shuō)多個(gè)節(jié)點(diǎn)共享相同的配置
OCR就好比Windows的一個(gè)注冊(cè)表,存儲(chǔ)了所有與集群,,RAC數(shù)據(jù)庫(kù)相關(guān)的配置信息。而且是公用的配置,也就是說(shuō)多個(gè)節(jié)點(diǎn)共享相同的配置信息。因此該配置應(yīng)當(dāng)存儲(chǔ)于共享磁盤(pán)。本文主要基于Oracle 10g RAC描述了集群的OCR以及OCR產(chǎn)生的健忘問(wèn)題。
一、OCR的特點(diǎn)
類似于Windows注冊(cè)表,用于存儲(chǔ)所有與集群,RAC數(shù)據(jù)庫(kù)相關(guān)的配置信息
被多個(gè)節(jié)點(diǎn)所共享,因此,只能存儲(chǔ)于共享磁盤(pán)。支持單disk以及鏡像方式來(lái)存放。大小通常100MB-1GB。
在Oracle 10g中,只能存儲(chǔ)于裸設(shè)備或者ocfs文件系統(tǒng),以及nfs,gfs文件系統(tǒng)。Oracle 11g中可以直接存放在asm中。
整個(gè)集群及RAC數(shù)據(jù)庫(kù)配置需要在OCR中來(lái)進(jìn)行維護(hù)。換句話說(shuō),就像windows注冊(cè)表的導(dǎo)入導(dǎo)出,修改、更新鍵值等。
通常情況下,OCR中的配置信息會(huì)隨著使用工具對(duì)其進(jìn)行自動(dòng)更新。如SRVCTL,DBCA,OEM,NETCA等。
而OCR的配置與維護(hù)則通常包括OCR的校驗(yàn),備份,查看OCR的內(nèi)容,添加移出OCR文件,重定位,修復(fù)OCR文件。
OCR磁盤(pán)最多只能有兩個(gè),一個(gè)Primary OCR 和一個(gè)Mirror OCR,兩個(gè)OCR 磁盤(pán)互為鏡像,以防止OCR 磁盤(pán)的單點(diǎn)故障。
注:集群,我們通常指的是clusterware,而RAC數(shù)據(jù)庫(kù),即是基于集群之上的數(shù)據(jù)庫(kù)。
二、OCR包含的內(nèi)容
OCR中通常包含下列內(nèi)容
節(jié)點(diǎn)成員信息
數(shù)據(jù)庫(kù)實(shí)例,節(jié)點(diǎn),以及其他的映射關(guān)系
ASM
資源配置信息(vip,services等等)
服務(wù)特性(Service characteristics)
Oracle集群中相關(guān)進(jìn)程的信息
CRS控制的第三方應(yīng)用程序信息
三、OCR的工作過(guò)程
由于OCR存放于共享存儲(chǔ),因此在Cluster中的每個(gè)節(jié)點(diǎn)都通過(guò)本地OCR進(jìn)程訪問(wèn)OCR緩存在其內(nèi)存中維護(hù)著的一個(gè)副本。同時(shí)由于對(duì)OCR
的所有操作必須確保OCR內(nèi)容完整性,所以在ORACLE Clusterware運(yùn)行過(guò)程中,并不是所有結(jié)點(diǎn)都能操作OCR Disk。 只有一個(gè)OCR進(jìn)程對(duì)共
享存儲(chǔ)中的OCR進(jìn)行讀寫(xiě)操作。這個(gè)節(jié)點(diǎn)叫作OCR Master結(jié)點(diǎn)。此進(jìn)程負(fù)責(zé)刷新(refresh)其自己擁有的本地緩存以及Cluster中其他節(jié)點(diǎn)
的OCR cache。也就是說(shuō),OCR客戶端查詢都是通過(guò)本地OCR進(jìn)程來(lái)查詢本地的一個(gè)OCR副本,而當(dāng)客戶端需要更新OCR時(shí),它們將通過(guò)本地OCR
進(jìn)程與那個(gè)扮演讀寫(xiě)OCR文件的進(jìn)程O(píng)CR Master進(jìn)行交互。
#下面是一個(gè)兩節(jié)點(diǎn)的RAC,可以看出ocr master節(jié)點(diǎn)起初在第一個(gè)節(jié)點(diǎn),后來(lái)轉(zhuǎn)移到第二個(gè)節(jié)點(diǎn),再后來(lái)又到第一個(gè)節(jié)點(diǎn)。
#這是由于節(jié)點(diǎn)一關(guān)閉或節(jié)點(diǎn)一上的集群處于不可用狀態(tài)導(dǎo)致ocr master節(jié)點(diǎn)發(fā)生了轉(zhuǎn)移。
oracle@bo2dbp:/u01/oracle/crs/log/bo2dbp/cssd> cat ocssd.log | grep "master node"
[ CSSD]CLSS-3001: local node number 1, master node number 1
[ CSSD]CLSS-3001: local node number 1, master node number 1
[ CSSD]CLSS-3001: local node number 1, master node number 1
[ CSSD]CLSS-3001: local node number 1, master node number 1
[ CSSD]CLSS-3001: local node number 1, master node number 2
[ CSSD]CLSS-3001: local node number 1, master node number 1
oracle@bo2dbp:~> grep -i "master node" $ORA_CRS_HOME/log/bo2dbp/cssd/ocssd.log | tail -1
[ CSSD]CLSS-3001: local node number 1, master node number 1
OCR客戶端應(yīng)用有:Oracle通用安裝器(OUI)、SRVCTL、企業(yè)管理器(EM)、DBCA、DBUA、NetCA和虛擬網(wǎng)絡(luò)協(xié)議助理(VIPCA)。
此外,OCR維護(hù)管理著CRS內(nèi)部中定義的各種應(yīng)用程序的資源的依賴和狀態(tài)信息,特別是Database、Instance、Services和節(jié)點(diǎn)的應(yīng)用程序。
OCR配置文件的名字是ocr.loc,Linux下位于/etc/oracle/ocr.loc。
后附OCR結(jié)構(gòu)圖
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com