https://czmmiao.iteye.com/blog/1762900node
https://blog.csdn.net/weeknd/article/details/72358218數據庫
---------------------
做者:weeknd
來源:CSDN
原文:https://blog.csdn.net/weeknd/article/details/72358218
版權聲明:本文爲博主原創文章,轉載請附上博文連接!app
sapme 0post
在11gR2中若是直接shutdown會致使重啓crs沒法自動啓動instance,.net
推薦使用$srvctl stop database -d racblog
手工 shutdown immedaite dbci
crs 再次啓動,不會拉起DB字符串
須要手工啓動DB instanceget
若是使用srvctl stop database string
crs 再次啓動,會拉起DB
sample 1
SRVCTL enable/disable命令
缺省狀況下數據庫、實例、服務、ASM都是隨着CRS的啓動而自動啓動的,有時因爲維護須要,能夠先關閉這個特性
$srvctl enable database -d czmmiao
$srvctl disable database -d czmmiao
2:容許自動啓動
[grid@csicn20db02 ~]$ srvctl enable database -d mycim
[grid@csicn20db01 ~]$ srvctl enable instance -d mycim -i mycim1
[grid@csicn20db01 ~]$ srvctl enable instance -d mycim -i mycim2
[grid@csicn20db01 ~]$ srvctl start database -d mycim
[grid@csicn20db01 ~]$ crsctl status res -t
SRVCTL Start命令
啓動數據庫,全部實例或指定的實例,及啓動全部相關未啓動的監聽。
注:對於start命令和其它一些可使用鏈接字符串的操做,若是你不提供鏈接字符串,那麼ORACLE會使用」/ as sysdba」在實例上執行相關的操做。另外,要執行相似的操做,你必須是OSDBA組的成員。
srvctl start database -d database_name [-o start_options] [-c connect_string]
srvctl start instance -d database_name -i instance_name [,instance_name-list] [-o start_options][-c connect_string]
命令參數:
-o 在SQL*Plus直接傳遞的startup命令選項,能夠包括PFILE
-c 使用SQL*Plus鏈接數據庫實例的鏈接字符串
Eg:
$srvctl start database -d rac
$ srvctl stop database -d rac -c 「SYS/SYS_password as SYSDBA」
$srvctl start instance -d rac -i rac1,rac2
啓停監聽
$ srvctl stop listener -n node [-l listenername]
$srvctl start listener -n node1
$srvctl stop listener -n node2
SRVCTL命令的小bug具體參見
http://yangtingkun.itpub.net/post/468/275571
若是用srvctl關閉監聽後,再用lsnrctl start打開監聽。這時srvctl仍然認爲監聽已經關閉。所以,再次使用srvctl關閉監聽,彷佛srvctl根本沒有去執行。若是但願srvctl能夠關閉監聽,那麼須要先用srvctl啓動監聽,而後再關閉。搜索了一下metalink,沒有發現關於這個問題的說明。並且,這個問題只在關閉監聽時出現,啓動監聽則沒有問題。svrctl顯然只記錄它本身的操做,而不去檢查listener真正的狀態。
SRVCTL Status命令
顯示指定數據庫的當前狀態
srvctl status database -d database_name
srvctl status instance -d database_name -i instance_name [,instance_name-list]
Eg:
$srvctl status database -d rac
$srvctl status instance -d rac -i rac1,rac2
SRVCTL Stop命令
中止數據庫全部實例可者指定實例
srvctl stop database -d database_name [-o stop_options] [-c connect_string]
srvctl stop instance -d database_name -i instance_name [,instance_name_list] [-o stop_options][-c connect_string]
命令參數:
-c 使用SQL*Plus鏈接數據庫實例的鏈接字符串
-o 在SQL*Plus直接傳遞的shutdown命令選項
Eg:
$srvctl stop database -d rac
$srvctl stop instance -d rac -i rac2
$ srvctl stop service -d db_name [-s service_name_list [-i inst_name]]
$ srvctl stop asm -n node
使用SRVCONFIG導入和導出RAW設備配置信息
可以使用SRVCONFIG導入和導出RAW設備配置信息,無論配置文件是在集羣文件系統上仍是在RAW設備上。你可使用這種方法來備份與恢復SRVM配置信息。
Eg:
下面的命令用來導出配置信息的內容到你指定文件名的文本文件中。
$srvconfig -exp file_name
下面的命令用來從指定文本文件中導入配置信息到到你運行命令的RAC環境配置信息庫。
$srvconfig -imp file_name
SRVCTL Getenv命令
getenv操做用來從SRVM配置文件中獲取與顯示環境變量
srvctl getenv database -d database_name [-t name[,name,……]]
srvctl getenv instance -d database_name -i instance_name [-t name[,name,……]]
Eg:
$srvctl getenv database -d rac
SRVCTL Setenv命令
設置SRVM配置文件中的環境變量值。
srvctl setenv database -d database_name -t [,name=value,……]
srvctl setenv instance -d database_name [-i instance_name] -t [,name=value,……]
Eg:
$srvctl setenv database -d rac -t LANG=en
SRVCTL Unsetenv命令
取消SRVM配置文件中環境變量定義值
srvctl unsetenv database -d database_name-t name[,name,……]
srvctl unsetenv instance -d database_name[-i instance_name] -t name[,name,……]
Eg:
$srvctl unsetenv database -d rac -t CLASSPATH
Updated @ 11-12-09 11:43
啓停數據庫 STARTUP:node1$srvctl start nodeapps -n rac1node1$srvctl start nodeapps -n rac2node1$srvctl start asm -n rac1node1$srvctl start asm -n rac2node1$srvctl start database -d racnode1$srvctl start service -d racnode1$crs_stat -t SHUTDOWN:node1$srvctl stop service -d racnode1$srvctl stop database -d racnode1$srvctl stop asm -n rac2node1$srvctl stop asm -n rac1node1$srvctl stop nodeapps -n rac2node1$srvctl stop nodeapps -n rac1node1$crs_stat -t