共計 6975 個字符,預計需要花費 18 分鐘才能閱讀完成。
Oracle 11gR2 RAC 集群服務啟動與關閉是怎樣的,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Oracle 11gR2 RAC 集群服務啟動與關閉總結
關閉過程(CRS 集群關閉- 關閉數據庫)
1. 關閉數據庫:
用 oracl 用戶執行 srvctl 命令
語法:srvctl stop database -d dbname [-o immediate]
作用:可以一次性關閉 dbname 的所有實例
[oracle@rac1 ~]$ srvctl stop database -d racdb - 停止所有節點上的實例
然后查看狀態:
[oracle@rac1 ~]$ srvctl status database -d racdb
Instance rac1 is not running on node rac1
Instance rac2 is not running on node race
2. 停止 HAS(High Availability Services),必須以 root 用戶操作
[root@rac1 oracle]# cd /u01/grid/11.2.0/grid/bin
[root@rac1 bin]# ./crsctl stop has -f
[root@rac1 bin]# ./crsctl stop crs -f
本命令只能關閉當前節點的 CRS 服務,因此需要在 RAC 的所有節點上執行,啟動也一樣。has 與 crs 等同
3. 停止節點集群服務,必須以 root 用戶:
[root@rac1 oracle]# cd /u01/grid/11.2.0/grid/bin
[root@rac1 bin]# ./crsctl stop cluster —- 停止本節點集群服務
[root@rac1 bin]# ./crsctl stop cluster -all — 停止所有節點服務
也可以如下控制所停節點:
[root@rac1 bin]# crsctl stop cluster -n rac1 rac2
CRS-2677: Stop of ora.cssd on rac1 succeeded
CRS-2677: Stop of ora.cssd on rac2 succeeded
省略日志輸出
你如果想一條命令把所有的進程全部停止可以使用上述命令。如果不指定參數的話對當前節點有效,如果指定參數的話對相關參數節點有效。
4. 檢查集群進程狀態
[root@rac1 bin]# crsctl check cluster
詳細輸出
[root@rac1 bin]# crs_stat -t -v
只檢查本節點的集群狀態
[root@rac1 bin]# crsctl check crs
啟動過程(CRS 集群啟動- 啟動數據庫)
1. 啟動 HAS
單一節點啟動
[root@rac2 ~]# crsctl start has
[root@rac2 ~]# crsctl start crs
[root@rac2 ~]# crsctl check crs
CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
所有節點啟動
[root@rac1 bin]# crsctl start cluster -n rac1 rac2
CRS-4123: Oracle High Availability Services has been started.
[root@rac1 bin]# crsctl start cluster -all
[root@rac2 ~]# crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
此命令會在后臺啟動所有 RAC CRS 相關進程
[root@rac2 ~]# crs_stat -t -v
CRS-0184: Cannot communicate with the CRS daemon.
因為 start has 啟動的 crs 進程比較多因此會啟動的比較慢,我的機器等待了 5 分鐘,在沒有完全啟動成功之前會報上述錯誤,需要耐心等待一段時間后執行下面命令即可查看到所有 CRS 相關進程服務已經啟動。
[root@rac2 ~]# crs_stat -t -v
Name Type R/RA F/FT Target State Host
———————————————————————-
ora.DATA.dg ora….up.type 0/5 0/ ONLINE ONLINE rac1
ora….ER.lsnr ora….er.type 0/5 0/ ONLINE ONLINE rac1
ora….N1.lsnr ora….er.type 0/5 0/0 ONLINE ONLINE rac2
ora….N2.lsnr ora….er.type 0/5 0/0 ONLINE ONLINE rac1
ora….N3.lsnr ora….er.type 0/5 0/0 ONLINE ONLINE rac1
ora.asm ora.asm.type 0/5 0/ ONLINE ONLINE rac1
ora.cvu ora.cvu.type 0/5 0/0 ONLINE ONLINE rac1
ora.gsd ora.gsd.type 0/5 0/ OFFLINE OFFLINE
ora….network ora….rk.type 0/5 0/ ONLINE ONLINE rac1
ora.oc4j ora.oc4j.type 0/1 0/2 ONLINE ONLINE rac1
ora.ons ora.ons.type 0/3 0/ ONLINE ONLINE rac1
ora….SM1.asm application 0/5 0/0 ONLINE ONLINE rac1
ora….C1.lsnr application 0/5 0/0 ONLINE ONLINE rac1
ora.rac1.gsd application 0/5 0/0 OFFLINE OFFLINE
ora.rac1.ons application 0/3 0/0 ONLINE ONLINE rac1
ora.rac1.vip ora….t1.type 0/0 0/0 ONLINE ONLINE rac1
ora….SM2.asm application 0/5 0/0 ONLINE ONLINE rac2
ora….C2.lsnr application 0/5 0/0 ONLINE ONLINE rac2
ora.rac2.gsd application 0/5 0/0 OFFLINE OFFLINE
ora.rac2.ons application 0/3 0/0 ONLINE ONLINE rac2
ora.rac2.vip ora….t1.type 0/0 0/0 ONLINE ONLINE rac2
ora….ry.acfs ora….fs.type 0/5 0/ ONLINE ONLINE rac1
ora.scan1.vip ora….ip.type 0/0 0/0 ONLINE ONLINE rac2
ora.scan2.vip ora….ip.type 0/0 0/0 ONLINE ONLINE rac1
ora.scan3.vip ora….ip.type 0/0 0/0 ONLINE ONLINE rac1
說明:
英文解釋
ora.gsd is OFFLINE by default ifthere is no 9i database in the cluster.
ora.oc4j is OFFLINE in 11.2.0.1 as DatabaseWorkload Management(DBWLM) is unavailable. these can be ignored in11gR2 RAC.
中文解釋
ora.gsd 是集群服務中用于與 9i 數據庫進行通信的一個進程,在當前版本中為了向后兼容才保存下來,狀態為 OFFLINE 不影響 CRS 的正常運行與性能,我們忽略即可
ora.oc4j 是在 11.2.0.2 以上版本中有效的服務進程,用于 DBWLM 的資源管理,因此在 11.2.0.1 以下版本并沒有使用
2. 啟動數據庫:
oracl 用戶執行 srvctl 命令:
語法:srvctl start|stop|status database -d dbname [-o immediate]
作用:可以一次性啟動 dbname 的所有實例
[oracle@rac1 ~]$ srvctl start database -d racdb - 啟動所有節點上的實例
然后查看狀態:
[oracle@rac1 ~]$ srvctl status database -d racdb
3. 詳細輸出資源全名稱并檢查狀態
crsctl status resource -t
crsctl status resource
4. 常用 srvctl 命令
指定 dbname 上某個實例
srvctl start|stop|status instance -d dbname -i instance_name
5. 顯示 RAC 下所有實例配置與狀態
srvctl status|config database -d dbname
6. 顯示所有節點的應用服務(VIP,GSD,listener,ONS)
srvctl start|stop|status nodeapps -n node_name
7.ASM 進程服務管理
srvctl start|stop|status|config asm -n nodename [-i asm_inst_name] [-o oracle_home]
srvctl config asm -a
srvctl status asm -a
6. 可以獲取所有的環境信息:
srvctl getenv database -d dbname [-i instance_name]
7. 設置全局環境和變量:
srvctl setenv database -d dbname -t LANG=en
8. 在 OCR 中刪除已有的數據庫信息
srvctl remove database -d dbname
9. 向 OCR 中添加一個數據庫的實例:
srvctl add instance -d dbname -i instance_name -n node1
srvctl add instance -d dbname -i instance_name -n node2
10. 檢查監聽的狀態
srvctl status listener
srvctl config listener -a
SCAN 配置信息
srvctl config scan
SCAN listener 狀態信息
srvctl status scan
小結:crsctl 命令是一個集群級別命令,可以對所有集群資源進行統一啟動、停止等管理操作
srvctl 命令是一個服務級別命令,可以對單一服務資源進行統一啟動、停止等管理操作
附:srvctl 命令啟動與停止的詳細幫助
[root@rac2 ~]# srvctl start -h
The SRVCTL start command starts, Oracle Clusterware enabled, non-running objects.
Usage: srvctl start database -d db_unique_name [-o start_options] [-n node]
Usage: srvctl start instance -d db_unique_name {-n node_name [-i inst_name] | -i inst_name_list } [-o start_options]
Usage: srvctl start service -d db_unique_name [-s service_name_list [-n node_name | -i inst_name] ] [-o start_options]
Usage: srvctl start nodeapps [-n node_name] [-g] [-v]
Usage: srvctl start vip {-n node_name | -i vip_name} [-v]
Usage: srvctl start asm [-n node_name] [-o start_options]
Usage: srvctl start listener [-l lsnr_name] [-n node_name]
Usage: srvctl start scan [-i ordinal_number] [-n node_name]
Usage: srvctl start scan_listener [-n node_name] [-i ordinal_number]
Usage: srvctl start oc4j [-v]
Usage: srvctl start home -o oracle_home -s state_file -n node_name
Usage: srvctl start filesystem -d volume_device [-n node_name]
Usage: srvctl start diskgroup -g dg_name [-n node_list]
Usage: srvctl start gns [-l log_level] [-n node_name] [-v]
Usage: srvctl start cvu [-n node_name]
For detailed help on each command and object and its options use:
srvctl command object -h
[root@rac2 ~]# srvctl stop -h
The SRVCTL stop command stops, Oracle Clusterware enabled, starting or running objects.
Usage: srvctl stop database -d db_unique_name [-o stop_options] [-f]
Usage: srvctl stop instance -d db_unique_name {-n node_name | -i inst_name_list} [-o stop_options] [-f]
Usage: srvctl stop service -d db_unique_name [-s service_name_list [-n node_name | -i inst_name] ] [-f]
Usage: srvctl stop nodeapps [-n node_name] [-g] [-f] [-r] [-v]
Usage: srvctl stop vip {-n node_name | -i vip_name} [-f] [-r] [-v]
Usage: srvctl stop asm [-n node_name] [-o stop_options] [-f]
Usage: srvctl stop listener [-l lsnr_name] [-n node_name] [-f]
Usage: srvctl stop scan [-i ordinal_number] [-f]
Usage: srvctl stop scan_listener [-i ordinal_number] [-f]
Usage: srvctl stop oc4j [-f] [-v]
Usage: srvctl stop home -o oracle_home -s state_file -n node_name [-t stop_options] [-f]
Usage: srvctl stop filesystem -d volume_device [-n node_name] [-f]
Usage: srvctl stop diskgroup -g dg_name [-n node_list] [-f]
Usage: srvctl stop gns [-n node_name] [-f] [-v]
Usage: srvctl stop cvu [-f]
For detailed help on each command and object and its options use:
srvctl command object -h
關于 Oracle 11gR2 RAC 集群服務啟動與關閉是怎樣的問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注丸趣 TV 行業資訊頻道了解更多相關知識。