用srvctl命令配置service

來源:互聯網
上載者:User

.用srvctl命令配置service

 

除了用DBCA圖形方式,還可以使用命令方式配置service,這種方法對於維護遠程尤其有用。無論是建立還是維護都是用一個命令srvctl,先看一下srvctl命令和service相關的文法,如下:

建立service

[oracle@felix1 ~]$ srvctl add service -h

Usage: srvctl add service -d <name> -s<service_name> -r "<preferred_list>" [-a"<available_list>"] [-P <TAF_policy>]

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -r"<pref_list>"    List ofpreferred instances

    -a"<avail_list>"   List ofavailable instances

    -P<TAF_policy>     TAF policy (NONE,BASIC, or PRECONNECT)

Usage: srvctl add service -d <name> -s<service_name> -u {-r "<new_pref_inst>" | -a"<new_avail_inst>"}

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -u                  Add a new instance to serviceconfiguration

    -r<new_pref_inst>  Name of newpreferred instance

    -a<new_avail_inst> Name of new available instance

    -h                  Print usage

[oracle@felix1 ~]$

樣本如下:

Felix1,felix2為執行個體名;Felix是資料庫名;策略是:BASIC

[oracle@felix1~]$ srvctl add service -d felix -s taf_srvctl -r felix2 -a felix1 -P BASIC

[oracle@felix1~]$

 

查看service配置

[oracle@felix1 ~]$ srvctl config service -d felix-a

taf_server PREF: felix1 AVAIL: felix2 TAF: basic

taf_srvctl PREF: felix2 AVAIL: felix1 TAF: BASIC

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl config service -d felix-h

Usage: srvctl config service -d <name> [-s<service_name>] [-a] [-S <level>]

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -a                  Additional attributes

    -S<level>          Additionalinformation for EM Console

    -h                  Print usage

[oracle@felix1 ~]$

如果不指定“-s service_name”,就會顯示所有的service配置,這些配置只包括preferred和avilable instance。使用-a選項,還會顯示TAF的資訊。

 

是否自動運行

資料庫啟動時,會自動啟動所有的service。有時為了維護的需要,需要禁用這個特性。在維護完成之後再啟動這個特性。

 

[oracle@felix1 ~]$ srvctl disable service -h

Usage: srvctl disable service -d <name> -s"<service_name_list>" [-i <inst_name>]

    -d<name>           Unique name forthe database

    -s"<serv,...>"     Commaseparated service names

    -i<inst>           Instance name

    -h                  Print usage

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl disable service -d felix-s taf_server -i felix1

[oracle@felix1 ~]$ srvctl config service -d felix-a

taf_server PREF: felix1 AVAIL: felix2 TAF: basic

Service taf_server is disabled on instance(s) felix1.

taf_srvctl PREF: felix2 AVAIL: felix1 TAF: BASIC

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl disable service -d felix-s taf_server

PRKP-1024 : The service taf_server is stillrunning.

 

關閉服務service並diable:

 

[oracle@felix1 ~]$ srvctl stop service -h

Usage: srvctl stop service -d <name> [-s"<service_name_list>" [-i <inst_name>]] [-f]

    -d<name>           Unique name forthe database

    -s"<serv,...>"     Commaseparated service names

    -i<inst>           Instance name

    -f                  Disconnect all sessionsduring stop or relocate service operations

    -h                  Print usage

[oracle@felix1 ~]$ srvctl stop service  -d felix -staf_server

[oracle@felix1 ~]$ srvctl config service -d felix-a

taf_server PREF: felix1 AVAIL: felix2 TAF: basic

taf_srvctl PREF: felix2 AVAIL: felix1 TAF: BASIC

[oracle@felix1 ~]$ srvctl disable service -d felix-s taf_server

[oracle@felix1 ~]$ srvctl config service -d felix-a

taf_server PREF: felix1 AVAIL: felix2 TAF: basic

Service taf_server is disabled.

taf_srvctl PREF: felix2 AVAIL: felix1 TAF: BASIC

[oracle@felix1 ~]$

啟動service

[oracle@felix1 ~]$ srvctl start service  -h

Usage: srvctl start service -d <name> [-s"<service_name_list>" [-i <inst_name>]] [-o<start_options>]

    -d<name>           Unique name forthe database

    -s"<serv,...>"     Commaseparated service names

    -i<inst>           Instance name

    -o<start_options>  Options to startupcommand (e.g. open, mount, or nomount)

    -h                  Print usage

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl start service  -d felix -s taf_server

[oracle@felix1 ~]$

 

查看service狀態。

[oracle@felix1 ~]$ srvctl status  service -h

Usage: srvctl status service -d <name> [-s"<service_name_list>"] [-f] [-v] [-S <level>]

    -d<name>           Unique name forthe database

    -s"<serv,...>"     Commaseparated service names

    -f                  Include disabled applications

    -v                  Verbose output

    -S<level>          Additionalinformation for EM Console

    -h                  Print usage

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl status  service -d felix -s taf_server -f -v

Service taf_server is running on instance(s)felix2

[oracle@felix1 ~]$ srvctl status  service -d felix -s taf_server -f -v -S 3

#@=info: operation={status} config={full}ver={10.2.0.0.0}

#@=service[0]: name={taf_server} enabled={true}pref={felix1} avail={felix2} disabled_insts={felix1} tafpolicy={basic}type={user}

#@=service[1]: name={felix} enabled={true}pref={felix1, felix2} avail={} disabled_insts={} tafpolicy={NONE}type={internal}

Service taf_server is running on instance(s)felix2

#@=result[0]: up={felix2} down={felix1}disabled={felix1} unknown={}

#@=result[1]: up={felix1, felix2} down={}disabled={} unknown={}

#@=done: status={0}

[oracle@felix1 ~]$

 

刪除service。

[oracle@felix1 ~]$ srvctl remove service -h

Usage: srvctl remove service -d <name> -s<service_name> [-i <inst_name>] [-f]

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -i<inst>           Instance name

    -f                  Force remove

    -h                  Print usage

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl status service -d felix

Service taf_server is running oninstance(s) felix1

Service taf_srvctl is not running.

[oracle@felix1 ~]$ srvctl remove service -d felix-s taf_server -i felix1

taf_server PREF: felix1 AVAIL: felix2

Remove service taf_server from the instancefelix1? (y/[n]) y

PRKP-1024 : The service taf_server is still running.

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl remove service -d felix-s taf_srvctl -i felix1

taf_srvctl PREF: felix2 AVAIL: felix1

Remove service taf_srvctl from the instancefelix1? (y/[n]) y

PRKP-1067 : Instance felix1 is the last availableinstance for service taf_srvctl. Try modify service instead.

[oracle@felix1 ~]$ srvctl config  service -d felix -a

taf_server PREF: felix1 AVAIL: felix2 TAF: basic

taf_srvctl PREF: felix2 AVAIL: felix1 TAF: BASIC

[oracle@felix1 ~]$

 

[oracle@felix1 ~]$ srvctl remove service -d felix -staf_srvctl  -f

[oracle@felix1 ~]$ srvctl config  service -d felix -a

taf_server PREF: felix1 AVAIL: felix2 TAF: basic

[oracle@felix1 ~]$ srvctl remove service -d felix-s taf_server  -f

PRKP-1024: The service taf_server is still running.

[oracle@felix1 ~]$ srvctl stop service -d felix -staf_server 

[oracle@felix1 ~]$ srvctl remove service -d felix-s taf_server  -f

[oracle@felix1 ~]$ srvctl config  service -d felix -a

[oracle@felix1 ~]$

修改服務

[oracle@felix1 ~]$ srvctl modify service -h

Usage: srvctl modify service -d <name> -s<service_name> -i <old_inst_name> -t <new_inst_name> [-f]

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -i<old_inst>       Old instance name

    -t<new_inst>       New instance name

    -f                  Disconnect all sessionsduring stop or relocate service operations

Usage: srvctl modify service -d <name> -s<service_name> -i <avail_inst_name> -r [-f]

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -i<inst>           Instance name

    -r                  Upgrade instance to preferred

    -f                  Disconnect all sessionsduring stop or relocate service operations

Usage: srvctl modify service -d <name> -s<service_name> -n -i <prefered_inst> [-a <available_list>][-f]

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -n                  Modify service configuration

    -r "<pref_list>"    List of preferred instances

    -a"<avail_list>"   List ofavailable instances

    -f                  Disconnect all sessionsduring stop or relocate service operations

Usage: srvctl modify service -d <name> -s<service_name> -P <TAF_policy> [-f]

    -d<name>           Unique name forthe database

    -s<service>        Service name

    -P<TAF_policy>     TAF policy (NONE,BASIC, or PRECONNECT)

    -f                  Disconnect all sessionsduring stop or relocate service operations

    -h                  Print usage

[oracle@felix1 ~]$

 

[oracle@felix2 ~]$ srvctl modify service -d felix-s taf_srvctl -n -i felix1,felix2 -f

[oracle@felix2 ~]$ srvctl config  service -d felix  -a

taf_srvctlPREF: felix1 felix2 AVAIL:  TAF: basic

[oracle@felix2 ~]$


【參考大話RAC--張曉明】

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.