天天看點

srvctl 指令詳解

srvctl 指令周詳說明檔案(譯)

簡介:

srvctl是oracle9i rac叢集設定管理的工具。本文是對srvctl的所有指令進行周詳說明的一篇參考檔案。

讀者對象:oracle9i rac資料庫叢集管理者。

注:

rac:     real application clusters

srvm:   server management

-------------------------------------------------------------------------------

l         srvctl add

添加資料庫或執行個體的設定資訊。在增加執行個體中,和-i一起指定的名字應該和instance_name 和 oracle_sid參數比對。

srvctl add database -d database_name [-m domain_name] -o oracle_home [-s spfile]

srvctl add instance -d  database_name  -i instance_name -n node_name  

表4-5 srvctl add指令周詳選項

-------------------------------------------------------------------------------

指令   選項

-------------------------------------------------------------------------------

-m     資料庫域名  格式如"us.mydomain.com"

  -m 選項指定的資料庫域名必須比對資料庫init.ora或spfile中db_domain 和db_name參數。在增加資料庫時,-d指定的資料庫名必須和db_name參數比對

-n     執行個體節點名

-o     $oracle_home(用來确定lsnrctl和oracle等指令路徑)

-s     spfile 檔案名

-------------------------------------------------------------------------------

執行個體:添加一個新的資料庫

srvctl add  database  -d mydb -o /ora/ora9

執行個體:向資料庫添加執行個體

srvctl add instance -d mydb -i  mydb01 -n gm01

srvctl add instance -d mydb -i  mydb02 -n gm02

srvctl add instance -d mydb -i  mydb03 -n gm03 

srvctl config

顯示儲存在srvm設定檔案中的設定資訊

srvctl config database

顯示資料庫設定清單

srvctl config database -d database_name

資料庫設定資訊顯示的格式:

nodename1 instancename1 oraclehome

nodename2 instancename2 oraclehome

執行個體:顯示資料庫設定資訊

srvctl config database -d mydb

 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,...]]

執行個體:列出資料庫的所有環境變量

srvctl getenv database -d mydb

srvctl modify

修改執行個體的節點設定資訊。這些修改會在程式下次重新啟動後生效。修改後的資訊将永久儲存。

srvctl modify instance -d database_name -i instance_name -n node_name

執行個體:修改執行個體到另一個節點

srvctl modify  instance  -d mydb  -n my_new_node

 srvctl remove

這是用來删除srvm庫中設定資訊的指令。對象相關的環境設定也同樣删除。如果你未使用強制标志(-f),oracle将提示你确認是否删除。

使用強制選項(-f),删除操作将不進行提示

srvctl remove database -d database_name [-f]

srvctl remove instance  -d database_name -i instance_name [-f]

srvctl remove指令周詳選項

-------------------------------------------------------------------------------

-f 強制删除應用時不進行确認提示

-------------------------------------------------------------------------------

執行個體:删除資料庫

srvctl remove  database  -d mydb

執行個體:删除資料庫執行個體

srvctl remove instance -d mydb -i  mydb01

srvctl remove instance -d mydb -i  mydb02

srvctl remove instance -d mydb -i  mydb03 

l         srvctl setenv

設定srvm設定檔案中的環境變量值。

srvctl setenv database -d database_name -t name=value [,name=value,...]

srvctl setenv instance -d database_name [-i instance_name] -t name=value [,name=value,...]

執行個體:設定資料庫環境變量

srvctl setenv database -d mydb -t / as sysdba"在執行個體上執行相關的操作。另外,要執行類似的操作,你必須是osdba組的成員。關于更多的osdba組權限資訊,請參考oracle9i的安裝指南。

-------------------------------------------------------------------------------

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]

表4-6 srvctl start指令周詳選項

-------------------------------------------------------------------------------

指令   選項

-------------------------------------------------------------------------------

-o     在sql*plus直接傳遞的startup指令選項,能包括pfile

-c     使用sql*plus連接配接資料庫執行個體的連接配接字元串

-------------------------------------------------------------------------------

執行個體:啟動資料庫及所有的執行個體

srvctl start database -d mydb

執行個體:啟動指定的執行個體

srvctl start instance  -d mydb -i mydb1,mydb4

l         srvctl status

顯示指定資料庫的目前狀态

srvctl status database -d database_name

srvctl status instance -d database_name -i instance_name [,instance_name-list]

執行個體:顯示資料和所有執行個體狀态

srvctl status database -d mydb

執行個體:顯示指定執行個體的狀态

srvctl status instance -d mydb -i mydb1,mydb2

l         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]

表4-7 srvctl stop指令周詳選項

-------------------------------------------------------------------------------

指令   選項

-------------------------------------------------------------------------------

-c     使用sql*plus連接配接資料庫執行個體的連接配接字元串

-o     在sql*plus直接傳遞的shutdown指令選項

-------------------------------------------------------------------------------

執行個體:停止資料庫所有的執行個體

srvctl stop database -d mydb

執行個體:停止指定執行個體

srvctl stop instance  -d mydb -i mydb1

l         srvctl unsetenv

取消srvm設定檔案中環境變量定義值

srvctl unsetenv database -d database_name-t name[,name,...]

srvctl unsetenv instance -d database_name[-i instance_name] -t name[,name,...]

執行個體:取消環境變量,回到預設值

srvctl unsetenv database -d mydb -t classpath

l         使用srvconfig導入和導出raw裝置設定資訊

你可使用srvconfig導入和導出raw裝置設定資訊,不管設定檔案是在叢集檔案系統上還是在raw裝置上。你能使用這種方法來備份和恢複srvm設定資訊。

例如:

下面的指令用來導出設定資訊的内容到你指定檔案名的文本檔案中。

srvconfig -exp file_name

下面的指令用來從指定文本檔案中導入設定資訊到到你運作指令的rac環境設定資訊庫。

srvconfig -imp file_name