Oracle 10g時(shí)代,我們很羨慕那些懂得Oracle9i的DBA,而不知不覺(jué)中度過(guò)了Oracle11g并迎接了12c時(shí)代,但是還是有不少DBA習(xí)慣于Oracle 10g的管理思維,尤其是在管理或安裝Oracle 11g RAC時(shí),偶爾感到不知錯(cuò)所。
在Oracle 11gR2 下的RAC,架構(gòu)發(fā)生了變化,多了grid用戶、警告日志位置也發(fā)生變化等。CRS的信息也是放在ASM 實(shí)例里的,所以要關(guān)asm,必須關(guān)閉crs,在Oracle
11g環(huán)境 RAC + ASM之間層次架構(gòu)如下圖所示:
在高陽(yáng)等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需設(shè)計(jì)網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),網(wǎng)絡(luò)營(yíng)銷推廣,成都外貿(mào)網(wǎng)站制作,高陽(yáng)網(wǎng)站建設(shè)費(fèi)用合理。
而Oracle10g的RAC環(huán)境中,CRS的信息放在裸設(shè)備上,因此關(guān)閉asm后才關(guān)閉CRS才是正確的。
除以上資源之外,我們還需要了解OHASD 資源,英文解釋如下:
Oracle High Availability Services Daemon (OHASD) :This process anchors the lower part of the Oracle Clusterware stack, which consists of processes that facilitate cluster operations.
在11gR2里面啟動(dòng)CRS的時(shí)候,會(huì)提示ohasd已經(jīng)啟動(dòng)。 那么這個(gè)OHASD到底包含哪些資源。 可以通過(guò)如下命令來(lái)查看:
[grid@oracle1 ~]$ crsctl status resource -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATADG.dg
ONLINE ONLINE oracle1
ONLINE ONLINE oracle2
ora.FRADG.dg
ONLINE ONLINE oracle1
ONLINE ONLINE oracle2
ora.LISTENER.lsnr
ONLINE ONLINE oracle1
ONLINE ONLINE oracle2
ora.OCRVT.dg
ONLINE ONLINE oracle1
ONLINE ONLINE oracle2
ora.asm
ONLINE ONLINE oracle1 Started
ONLINE ONLINE oracle2 Started
ora.gsd
OFFLINE OFFLINE oracle1
OFFLINE OFFLINE oracle2
ora.net1.network
ONLINE ONLINE oracle1
ONLINE ONLINE oracle2
ora.ons
ONLINE ONLINE oracle1
ONLINE ONLINE oracle2
ora.registry.acfs
ONLINE ONLINE oracle1
ONLINE ONLINE oracle2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE oracle1
ora.cvu
1 ONLINE ONLINE oracle2
ora.oc4j
1 ONLINE ONLINE oracle2
ora.oracle1.vip
1 ONLINE ONLINE oracle1
ora.oracle2.vip
1 ONLINE ONLINE oracle2
ora.scan1.vip
1 ONLINE ONLINE oracle1
ora.sjjczr.db
1 ONLINE ONLINE oracle1 Open
2 ONLINE ONLINE oracle2 Open
[grid@oracle1 ~]$
在Oracle 10g中CRS Resource 包括GSD(Global Serveice Daemon),ONS(Oracle Notification Service),VIP, Database, Instance 和 Service。
在11.2中,對(duì)CRSD資源進(jìn)行了重新分類: Local Resources 和 Cluster Resources。 OHASD 指的就是Cluster Resource.
1. Oracle 11g RAC關(guān)閉和啟動(dòng)相關(guān)命令
1.1 使用crsctl stop has/crsctl stop crs
用root用戶,在Oracle11gR2中停止和啟動(dòng)集群的命令如下:
#crsctl stop has [-f]
#crsctl start has
對(duì)于crsctl stop has 只有一個(gè)可選的參數(shù)就是-f,該命令只能停執(zhí)行該命令服務(wù)器上的HAS.而不能停所有節(jié)點(diǎn)上的。所以要把RAC 全部停掉,需要在所有節(jié)點(diǎn)執(zhí)行該命令。
下面的2個(gè)命令:使用crs 和 使用has 效果是完全一樣的:
#crsctl stop crs [-f]
#crsctl start crs
記得第一次在生產(chǎn)環(huán)境中安裝Oracle 11gR2 RAC + ASM 時(shí),當(dāng)安裝完后通過(guò)crs_stat -t 命令查看狀態(tài)總覺(jué)得不太對(duì)(在節(jié)點(diǎn)二上是的online狀態(tài)的資源數(shù)量比節(jié)點(diǎn)一明顯少得多),想重啟CRS和ASM,用了#crsctl stop crs命令(未帶 [ -f ] 參數(shù)),總是不太順利。最終重啟了服務(wù)器。后來(lái)想想,實(shí)際上也可以使用crsctl stop has [-f],沒(méi)比要重啟服務(wù)器。
啟動(dòng)HAS:
[root@rac1bin]# ./crsctl start has
CRS-4123:Oracle High Availability Services has been started.
[root@rac1bin]#
從上面看只是啟動(dòng)了HAS。實(shí)際上后面會(huì)把Oracle Restart 管理的資源都會(huì)啟動(dòng)。這個(gè)可以使用crs_stat命令來(lái)進(jìn)程驗(yàn)證。
[grid@oracle1 ~]$ crs_stat -t -v
Name Type R/RA F/FT Target State Host
----------------------------------------------------------------------
ora.DATADG.dg ora....up.type 0/5 0/ ONLINE ONLINE oracle1
ora.FRADG.dg ora....up.type 0/5 0/ ONLINE ONLINE oracle1
ora....ER.lsnr ora....er.type 0/5 0/ ONLINE ONLINE oracle1
ora....N1.lsnr ora....er.type 0/5 0/0 ONLINE ONLINE oracle1
ora.OCRVT.dg ora....up.type 0/5 0/ ONLINE ONLINE oracle1
ora.asm ora.asm.type 0/5 0/ ONLINE ONLINE oracle1
ora.cvu ora.cvu.type 0/5 0/0 ONLINE ONLINE oracle2
ora.gsd ora.gsd.type 0/5 0/ OFFLINE OFFLINE
ora....network ora....rk.type 0/5 0/ ONLINE ONLINE oracle1
ora.oc4j ora.oc4j.type 0/1 0/2 ONLINE ONLINE oracle2
ora.ons ora.ons.type 0/3 0/ ONLINE ONLINE oracle1
ora....SM1.asm application 0/5 0/0 ONLINE ONLINE oracle1
ora....E1.lsnr application 0/5 0/0 ONLINE ONLINE oracle1
ora....le1.gsd application 0/5 0/0 OFFLINE OFFLINE
ora....le1.ons application 0/3 0/0 ONLINE ONLINE oracle1
ora....le1.vip ora....t1.type 0/0 0/0 ONLINE ONLINE oracle1
ora....SM2.asm application 0/5 0/0 ONLINE ONLINE oracle2
ora....E2.lsnr application 0/5 0/0 ONLINE ONLINE oracle2
ora....le2.gsd application 0/5 0/0 OFFLINE OFFLINE
ora....le2.ons application 0/3 0/0 ONLINE ONLINE oracle2
ora....le2.vip ora....t1.type 0/0 0/0 ONLINE ONLINE oracle2
ora....ry.acfs ora....fs.type 0/5 0/ ONLINE ONLINE oracle1
ora.scan1.vip ora....ip.type 0/0 0/0 ONLINE ONLINE oracle1
ora.sjjczr.db ora....se.type 0/2 0/1 ONLINE ONLINE oracle1
1.2 使用crsctl stop cluster [-all]…
該命令的語(yǔ)法如下:
crsctl stop cluster [[-all]|[-n
crsctl start cluster [[-all]|[-n
該參數(shù)支持的選項(xiàng)更多,可以同時(shí)操控所有的節(jié)點(diǎn)。如果不指定參數(shù),那么只對(duì)當(dāng)前節(jié)點(diǎn)有效。
如:
[root@rac1 ~]# ./crsctl start cluster -n rac1 rac2
--停止當(dāng)前節(jié)點(diǎn)集群:
[root@rac1 bin]# ./crsctl stop cluster
2.停止和啟動(dòng)Resource
當(dāng)直接停止集群時(shí),相關(guān)的Resource 也會(huì)被停止。 但實(shí)際情況下,我們操作更多的是對(duì)某些資源的啟動(dòng)或關(guān)閉等操作。具體就是使用SRVCTL 命令。該命令不常用總被忘記,因此可以用幫助選項(xiàng) –h 來(lái)查看命令幫助:
[grid@rac1 ~]$ Srvclt –h
這個(gè)命令顯示的結(jié)果太長(zhǎng),不好查看,可以進(jìn)一步的查看幫助:
[grid@rac1 ~]$ srvctl start -h
RAC 運(yùn)行狀態(tài)通用的命令如下:
[root@vcdwdb1 ~]# srvctl -h
-bash: srvctl: command not found
[root@vcdwdb1 ~]# su - grid
[grid@vcdwdb1 ~]$ srvctl -h
用法: srvctl [-V] --顯示內(nèi)容很多,如下對(duì)內(nèi)容進(jìn)行了挑選后粘貼
用法: srvctl start nodeapps [-n
用法: srvctl stop nodeapps [-n
用法: srvctl status nodeapps
用法: srvctl start vip { -n
用法: srvctl stop vip { -n
用法: srvctl relocate vip -i
用法: srvctl status vip { -n
用法: srvctl start asm [-n
用法: srvctl stop asm [-n
用法: srvctl config asm [-a]
用法: srvctl status asm [-n
用法: srvctl config listener [-l
用法: srvctl start listener [-l
用法: srvctl stop listener [-l
用法: srvctl status listener [-l
用法: srvctl start scan [-i
用法: srvctl stop scan [-i
用法: srvctl relocate scan -i
用法: srvctl status scan [-i
用法: srvctl config cvu
用法: srvctl start cvu [-n
用法: srvctl stop cvu [-f]
用法: srvctl relocate cvu [-n
用法: srvctl status cvu [-n
也可以進(jìn)一步查看配置信息,如下:
[grid@vcdwdb1 ~]$ srvctl start -h
SRVCTL start 命令啟動(dòng)啟用 Oracle Clusterware 的未運(yùn)行的對(duì)象。
用法: srvctl start database -d
用法: srvctl start instance -d
用法: srvctl start service -d
用法: srvctl start nodeapps [-n
用法: srvctl start vip { -n
用法: srvctl start asm [-n
用法: srvctl start listener [-l
用法: srvctl start scan [-i
用法: srvctl start scan_listener [-n
用法: srvctl start oc4j [-v]
用法: srvctl start home -o
用法: srvctl start filesystem -d
用法: srvctl start diskgroup -g
用法: srvctl start gns [-l
用法: srvctl start cvu [-n
有關(guān)各個(gè)命令和對(duì)象的詳細(xì)幫助, 請(qǐng)使用:
srvctl