Oracle 10g時代,我們很羨慕那些懂得Oracle9i的DBA,而不知不覺中度過了Oracle11g并迎接了12c時代,但是還是有不少DBA習(xí)慣于Oracle 10g的管理思維,尤其是在管理或安裝Oracle 11g RAC時,偶爾感到不知錯所。
在Oracle 11gR2 下的RAC,架構(gòu)發(fā)生了變化,多了grid用戶、警告日志位置也發(fā)生變化等。CRS的信息也是放在ASM 實例里的,所以要關(guān)asm,必須關(guān)閉crs,在Oracle
11g環(huán)境 RAC + ASM之間層次架構(gòu)如下圖所示:
而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里面啟動CRS的時候,會提示ohasd已經(jīng)啟動。 那么這個OHASD到底包含哪些資源。 可以通過如下命令來查看:
[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中,對CRSD資源進(jìn)行了重新分類: Local Resources 和 Cluster Resources。 OHASD 指的就是Cluster Resource.
1. Oracle 11g RAC關(guān)閉和啟動相關(guān)命令
1.1 使用crsctl stop has/crsctl stop crs
用root用戶,在Oracle11gR2中停止和啟動集群的命令如下:
#crsctl stop has [-f]
#crsctl start has
對于crsctl stop has 只有一個可選的參數(shù)就是-f,該命令只能停執(zhí)行該命令服務(wù)器上的HAS.而不能停所有節(jié)點上的。所以要把RAC 全部停掉,需要在所有節(jié)點執(zhí)行該命令。
下面的2個命令:使用crs 和 使用has 效果是完全一樣的:
#crsctl stop crs [-f]
#crsctl start crs
記得第一次在生產(chǎn)環(huán)境中安裝Oracle 11gR2 RAC + ASM 時,當(dāng)安裝完后通過crs_stat -t 命令查看狀態(tài)總覺得不太對(在節(jié)點二上是的online狀態(tài)的資源數(shù)量比節(jié)點一明顯少得多),想重啟CRS和ASM,用了#crsctl stop crs命令(未帶 [ -f ] 參數(shù)),總是不太順利。最終重啟了服務(wù)器。后來想想,實際上也可以使用crsctl stop has [-f],沒比要重啟服務(wù)器。
啟動HAS:
[root@rac1bin]# ./crsctl start has
CRS-4123:Oracle High Availability Services has been started.
[root@rac1bin]#
從上面看只是啟動了HAS。實際上后面會把Oracle Restart 管理的資源都會啟動。這個可以使用crs_stat命令來進(jì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]…
該命令的語法如下:
crsctl stop cluster [[-all]|[-n<server>[...]]] [-f]
crsctl start cluster [[-all]|[-n<server>[...]]]
該參數(shù)支持的選項更多,可以同時操控所有的節(jié)點。如果不指定參數(shù),那么只對當(dāng)前節(jié)點有效。
如:
[root@rac1 ~]# ./crsctl start cluster -n rac1 rac2
--停止當(dāng)前節(jié)點集群:
[root@rac1 bin]# ./crsctl stop cluster
2.停止和啟動Resource
當(dāng)直接停止集群時,相關(guān)的Resource 也會被停止。 但實際情況下,我們操作更多的是對某些資源的啟動或關(guān)閉等操作。具體就是使用SRVCTL 命令。該命令不常用總被忘記,因此可以用幫助選項 –h 來查看命令幫助:
[grid@rac1 ~]$ Srvclt –h
這個命令顯示的結(jié)果太長,不好查看,可以進(jìn)一步的查看幫助:
[grid@rac1 ~]$ srvctl start -h
RAC 運行狀態(tài)通用的命令如下:
[root@vcdwdb1 ~]# srvctl -h
-bash: srvctl: command not found
[root@vcdwdb1 ~]# su - grid
[grid@vcdwdb1 ~]$ srvctl -h
用法: srvctl [-V] --顯示內(nèi)容很多,如下對內(nèi)容進(jìn)行了挑選后粘貼
用法: srvctl start nodeapps [-n <node_name>] [-g] [-v]
用法: srvctl stop nodeapps [-n <node_name>] [-g] [-f] [-r] [-v]
用法: srvctl status nodeapps
用法: srvctl start vip { -n <node_name> | -i <vip_name> } [-v]
用法: srvctl stop vip { -n <node_name> | -i <vip_name> } [-f] [-r] [-v]
用法: srvctl relocate vip -i <vip_name> [-n <node_name>] [-f] [-v]
用法: srvctl status vip { -n <node_name> | -i <vip_name> } [-v]
用法: srvctl start asm [-n <node_name>] [-o <start_options>]
用法: srvctl stop asm [-n <node_name>] [-o <stop_options>] [-f]
用法: srvctl config asm [-a]
用法: srvctl status asm [-n <node_name>] [-a] [-v]
用法: srvctl config listener [-l <lsnr_name>] [-a]
用法: srvctl start listener [-l <lsnr_name>] [-n <node_name>]
用法: srvctl stop listener [-l <lsnr_name>] [-n <node_name>] [-f]
用法: srvctl status listener [-l <lsnr_name>] [-n <node_name>] [-v]
用法: srvctl start scan [-i <ordinal_number>] [-n <node_name>]
用法: srvctl stop scan [-i <ordinal_number>] [-f]
用法: srvctl relocate scan -i <ordinal_number> [-n <node_name>]
用法: srvctl status scan [-i <ordinal_number>] [-v]
用法: srvctl config cvu
用法: srvctl start cvu [-n <node_name>]
用法: srvctl stop cvu [-f]
用法: srvctl relocate cvu [-n <node_name>]
用法: srvctl status cvu [-n <node_name>]
也可以進(jìn)一步查看配置信息,如下:
[grid@vcdwdb1 ~]$ srvctl start -h
SRVCTL start 命令啟動啟用 Oracle Clusterware 的未運行的對象。
用法: srvctl start database -d <db_unique_name> [-o <start_options>] [-n <node>]
用法: srvctl start instance -d <db_unique_name> {-n <node_name> [-i <inst_name>] | -i <inst_name_list>} [-o <start_options>]
用法: srvctl start service -d <db_unique_name> [-s "<service_name_list>" [-n <node_name> | -i <inst_name>] ] [-o <start_options>]
用法: srvctl start nodeapps [-n <node_name>] [-g] [-v]
用法: srvctl start vip { -n <node_name> | -i <vip_name> } [-v]
用法: srvctl start asm [-n <node_name>] [-o <start_options>]
用法: srvctl start listener [-l <lsnr_name>] [-n <node_name>]
用法: srvctl start scan [-i <ordinal_number>] [-n <node_name>]
用法: srvctl start scan_listener [-n <node_name>] [-i <ordinal_number>]
用法: srvctl start oc4j [-v]
用法: srvctl start home -o <oracle_home> -s <state_file> -n <node_name>
用法: srvctl start filesystem -d <volume_device> [-n <node_name>]
用法: srvctl start diskgroup -g <dg_name> [-n "<node_list>"]
用法: srvctl start gns [-l <log_level>] [-n <node_name>] [-v]
用法: srvctl start cvu [-n <node_name>]
有關(guān)各個命令和對象的詳細(xì)幫助, 請使用:
srvctl <command> <object> -h
[grid@vcdwdb1 ~]$ srvctl start listener -h
啟動監(jiān)聽程序。
用法: srvctl start listener [-l <lsnr_name>] [-n <node_name>]
-l <lsnr_name> 監(jiān)聽程序名
-n <node_name> 節(jié)點名
-h 輸出用法
[grid@vcdwdb1 ~]$
[grid@vcdwdb1 ~]$ srvctl status -h
SRVCTL status 命令顯示對象的當(dāng)前狀態(tài)。
用法: srvctl status database -d <db_unique_name> [-f] [-v]
用法: srvctl status instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>} [-f] [-v]
用法: srvctl status service -d <db_unique_name> [-s "<service_name_list>"] [-f] [-v]
用法: srvctl status nodeapps
用法: srvctl status vip { -n <node_name> | -i <vip_name> } [-v]
用法: srvctl status listener [-l <lsnr_name>] [-n <node_name>] [-v]
用法: srvctl status asm [-n <node_name>] [-a] [-v]
用法: srvctl status scan [-i <ordinal_number>] [-v]
用法: srvctl status scan_listener [-i <ordinal_number>] [-v]
用法: srvctl status srvpool [-g <pool_name>] [-a]
用法: srvctl status server -n "<server_list>" [-a]
用法: srvctl status oc4j [-n <node_name>] [-v]
用法: srvctl status home -o <oracle_home> -s <state_file> -n <node_name>
用法: srvctl status filesystem -d <volume_device> [-v]
用法: srvctl status diskgroup -g <dg_name> [-n "<node_list>"] [-a] [-v]
用法: srvctl status cvu [-n <node_name>]
用法: srvctl status gns [-n <node_name>] [-v]
有關(guān)各個命令和對象的詳細(xì)幫助, 請使用:
srvctl <command> <object> -h
[grid@vcdwdb1 ~]$ srvctl config -h
SRVCTL config 命令顯示存儲在 OCR 中的對象配置。
用法: srvctl config database [-d <db_unique_name> [-a] ] [-v]
用法: srvctl config service -d <db_unique_name> [-s <service_name>] [-v]
用法: srvctl config nodeapps [-a] [-g] [-s]
用法: srvctl config vip { -n <node_name> | -i <vip_name> }
用法: srvctl config network [-k <network_number>]
用法: srvctl config asm [-a]
用法: srvctl config listener [-l <lsnr_name>] [-a]
用法: srvctl config scan [-i <ordinal_number>]
用法: srvctl config scan_listener [-i <ordinal_number>]
用法: srvctl config srvpool [-g <pool_name>]
用法: srvctl config oc4j
用法: srvctl config filesystem -d <volume_device>
用法: srvctl config gns [-a] [-d] [-k] [-m] [-n <node_name>] [-p] [-s] [-V] [-q <name>] [-l] [-v]
用法: srvctl config cvu
有關(guān)各個命令和對象的詳細(xì)幫助, 請使用:
srvctl <command> <object> -h
例如:
[grid@vcdwdb1 ~]$ srvctl config asm
ASM 主目錄: /u01/app/11.2.0/grid_home
ASM 監(jiān)聽程序: LISTENER
[grid@vcdwdb1 ~]$ srvctl config asm -a
ASM 主目錄: /u01/app/11.2.0/grid_home
ASM 監(jiān)聽程序: LISTENER
ASM 已啟用。
[grid@vcdwdb1 ~]$
[grid@vcdwdb1 ~]$ srvctl config listener -a
名稱: LISTENER
網(wǎng)絡(luò): 1, 所有者: grid
主目錄: <CRS home>
節(jié)點 vcdwdb2,vcdwdb1 上的 /u01/app/11.2.0/grid_home
端點: TCP:1521
總結(jié):
在Oracle 11g環(huán)境中,Oracle的關(guān)閉和啟動順序如下:
關(guān)閉順序:
1、關(guān)閉數(shù)據(jù)庫,oracl用戶執(zhí)行srvctl命令:
[oracle@rac1 ~]$ srvctl stop database -d ORCL ---停止所有節(jié)點上的實例
或者每個節(jié)點登錄數(shù)據(jù)庫后執(zhí)行SQL>shutdown immediate
2,停止HAS(High Availability Services),必須以root用戶
[root@rac1 oracle]# cd /u01/grid/11.2.0/grid/bin
[root@rac1 bin]# ./crsctl stop has –f
3,停止集群服務(wù),必須以root用戶:
[root@rac1 oracle]# cd /u01/grid/11.2.0/grid/bin
[root@rac1 bin]# ./crsctl stop cluster -all ----停止所有節(jié)點服務(wù)
或[root@rac1 bin]# ./crsctl stop cluster ----停止本節(jié)點集群服務(wù),每個節(jié)點分別執(zhí)行
也可以如下控制所停節(jié)點:
[root@rac1 bin]# ./crsctl stop cluster -n rac1 rac2
如果在一個節(jié)點停止其他所有節(jié)點的,而不一一執(zhí)行命令,則也可以采用:
[root@rac1 bin]# ./crsctl stop cluster –all
啟動順序:
11g R2的RAC默認(rèn)開機會自啟動,當(dāng)然如果需要手工啟動。手工啟動按照cluster, HAS, database的順序啟動即可,具體命令如下:
1、啟動集群(cluster)
[root@rac1 ~]# ./crsctl start cluster -all --所有節(jié)點同時啟動
或者只啟動指定節(jié)點的
[root@rac1 ~]# ./crsctl start cluster -n rac1 rac2 --兩個節(jié)點同時啟動
2、啟動HAS(High Availability Services),必須以root用戶
[root@rac1 bin]# ./crsctl start has
以上has啟動命令需要在每個節(jié)點分別執(zhí)行
3、啟動數(shù)據(jù)庫,oracl用戶執(zhí)行srvctl命令(假設(shè)數(shù)據(jù)庫名為ORCL):
[oracle@rac1 ~]$ srvctl start database -d ORCL ---停止所有節(jié)點上的實例
或者每個節(jié)點登錄數(shù)據(jù)庫后執(zhí)行SQL>startup
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁題目:rac啟動和關(guān)閉-創(chuàng)新互聯(lián)
文章位置:http://aaarwkj.com/article34/gdope.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、動態(tài)網(wǎng)站、小程序開發(fā)、微信公眾號、軟件開發(fā)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容