在使用srvctl创建service时,需要注意TAF策略选项必须通过dbms_service包来配置。下面例子演示了如何创建一个服务felix_ora:
1.创建之前查看系统现有的service:
SQL> show parameter service
NAME TYPE VALUE
------------------------------------ -----------------------------------------
service_names string felix
SQL>
2.使用srvctl创建felix_ora服务;
[oracle@felix1 ~]$ srvctl add service -d felix -s felix_ora -r felix1 -a felix2 -P BASIC
[oracle@felix1 ~]$
[oracle@felix1 ~]$ srvctl config service -d felix-a
felix_ora PREF: felix1 AVAIL: felix2 TAF: BASIC
[oracle@felix1 ~]$ srvctl status service -d felix
Service felix_ora is not running.
[oracle@felix1 ~]$
3.确认服务创建成功,以下标红部分说明服务已经作为一项CRS Resource注册到CRS中,但是目前没有启动。
[oracle@felix1 ~]$ crs_stat -t -v
Name Type R/RA F/FT Target State Host
----------------------------------------------------------------------
ora.felix.db application 0/0 0/1 ONLINE ONLINE felix1
ora....x1.inst application 0/5 0/0 ONLINE ONLINE felix1
ora....x2.inst application 0/5 0/0 ONLINE ONLINE felix2
ora...._ora.cs application 0/0 0/1 OFFLINE OFFLINE
ora....ix1.srv application 0/0 0/0 OFFLINE OFFLINE
ora....SM1.asm application 0/5 0/0 ONLINE ONLINE felix1
ora....X1.lsnr application 0/5 0/0 ONLINE ONLINE felix1
ora.felix1.gsd application 0/5 0/0 ONLINE ONLINE felix1
ora.felix1.ons application 0/3 0/0 ONLINE ONLINE felix1
ora.felix1.vip application 0/0 0/0 ONLINE ONLINE felix1
ora....SM2.asm application 0/5 0/0 ONLINE ONLINE felix2
ora....X2.lsnr application 0/5 0/0 ONLINE ONLINE felix2
ora.felix2.gsd application 0/5 0/0 ONLINE ONLINE felix2
ora.felix2.ons application 0/3 0/0 ONLINE ONLINE felix2
ora.felix2.vip application 0/0 0/0 ONLINE ONLINE felix2
[oracle@felix1 ~]$
4.配置服务自动启动
[oracle@felix1 ~]$ srvctl enable service -d felix-s felix_ora
PRKP-1018 : Service felix_ora already enabled.
[oracle@felix1 ~]$
5.启动这个服务
[oracle@felix1 ~]$ srvctl start service -d felix -s felix_ora
[oracle@felix1 ~]$
[oracle@felix1 ~]$ srvctl status service -d felix -s felix_ora
Service felix_ora is running on instance(s) felix1
[oracle@felix1 ~]$
6.确认服务状态;
[oracle@felix2 ~]$ crs_stat -t -v
Name Type R/RA F/FT Target State Host
----------------------------------------------------------------------
ora.felix.db application 0/0 0/1 ONLINE ONLINE felix1
ora....x1.inst application 0/5 0/0 ONLINE ONLINE felix1
ora....x2.inst application 0/5 0/0 ONLINE ONLINE felix2
ora...._ora.cs application 0/0 0/1 ONLINE ONLINE felix1
ora....ix1.srv application 0/0 0/0 ONLINE ONLINE felix1
ora....SM1.asm application 0/5 0/0 ONLINE ONLINE felix1
ora....X1.lsnr application 0/5 0/0 ONLINE ONLINE felix1
ora.felix1.gsd application 0/5 0/0 ONLINE ONLINE felix1
ora.felix1.ons application 0/3 0/0 ONLINE ONLINE felix1
ora.felix1.vip application 0/0 0/0 ONLINE ONLINE felix1
ora....SM2.asm application 0/5 0/0 ONLINE ONLINE felix2
ora....X2.lsnr application 0/5 0/0 ONLINE ONLINE felix2
ora.felix2.gsd application 0/5 0/0 ONLINE ONLINE felix2
ora.felix2.ons application 0/3 0/0 ONLINE ONLINE felix2
ora.felix2.vip application 0/0 0/0 ONLINE ONLINE felix2
[oracle@felix2 ~]$
说明已经全部启动了;
新建的服务会自动添加到初始化参数文件中:
SQL> show parameter service
NAME TYPE VALUE
------------------------------------ -----------------------------------------
service_names string felix, felix_ora
SQL>
7.修改service的TAF配置,需要使用dbms_service.modify_service
begin
dbms_service.modify_service(