How To Configure Server Side TransparentApplication Failover [ID 460982.1]
1.创建TAFService
[Oracle@db1 bin]$ ./srvctl add service -d orcl -s server_taf -r "orcl1,orcl2" -P BASIC
--这里的orcl是database name,orcl1和orcl2 是instance name。
2. 启动server_taf服务
[oracle@db1 bin]$ ./srvctl start service -d orcl -s server_taf
3. 检查service运行情况
[oracle@db1 bin]$ ./srvctl config service -d orcl
Service name: server_taf
Service is enabled
Server pool: orcl_server_taf
Cardinality: 2
Disconnect: false
Service role: PRIMARY
Management policy: AUTOMATIC
DTP transaction: false
AQ HA notifications: false
Failover type: NONE
Failover method: NONE
TAF failover retries: 0
TAF failover delay: 0
Connection Load Balancing Goal: LONG
Runtime Load Balancing Goal: NONE
TAF policy specification: BASIC
Edition:
Preferred instances: orcl1,orcl2
Available instances:
4.确认serviceID
SQL> select name,service_id from dba_services where name = 'server_taf';
NAME SERVICE_ID
--------------------------------------------------------------------------
server_taf 3
5.给service添加参数:
SQL> execute dbms_service.modify_service (service_name => 'server_taf' -
, aq_ha_notifications => true -
, failover_method => dbms_service.failover_method_basic -
, failover_type => dbms_service.failover_type_select -
, failover_retries => 180 -
, failover_delay => 5 -
, clb_goal => dbms_service.clb_goal_long);
6. 确认参数修改:
col name format a15
col failover_method format a11 heading 'METHOD'
col failover_type format a10 heading 'TYPE'
col failover_retries format 9999999 heading 'RETRIES'
col goal format a10
col clb_goal format a8
col AQ_HA_NOTIFICATIONS format a5 heading 'AQNOT'
SQL> select name, failover_method,failover_type, failover_retries,goal, clb_goal,aq_ha_notifications from dba_services where service_id = 3;
NAME METHOD TYPE RETRIES GOAL CLB_GOAL AQNOT
--------------- ----------- ------------------ ---------- -------- -----
server_taf BASIC SELECT 180 NONE LONG YES
SQL>