rac taf配置

LOAD_BALANCE

目的:

启用和禁用客户端负载均衡到多个数据库地址

当你设置参数为on,yes 或者true, Oracle Net 处理 地址列表以一个随机的顺序,

平衡负载到多个侦听器或者 Oracle连接管理协议地址。

当你看到参数为off,no,或者false,Oracle Net尝试第一个地址在地址列表里。

如果连接失败 而且 failover 参数是启用的,然后Oracle Net尝试下面的地址直到成功

Example

net_service_name=
 (DESCRIPTION= 
  (LOAD_BALANCE=on)
  (ADDRESS=(PROTOCOL=tcp)(HOST=sales1-svr)(PORT=1521))
  (ADDRESS=(PROTOCOL=tcp)(HOST=sales2-svr)(PORT=1521)))
  (CONNECT_DATA=(SERVICE_NAME=sales.us.example.com))


FAILOVER

目的:

启用和禁用 connect-time failover对于多个协议的地址:

当你设置参数为on,Oracle net,在连接时,失败会到一个不同的地址如果第一个protocol 地址失败。

当你设置参数为off,Oracle Net尝试一个协议地址

注意:

不要设置 GLOBAL_DBNAME参数在SID_LIST_listener_name 在listener.ora文件里。

FAILOVER_MODE:


构造Oracle Net 来失败时到不同的侦听器如果第一个侦听器失败了在运行期间。

根据配置, session或紫红色任何SELECT 语句 是正在处理是自动失败

这个故障转移的类型是被称为 Transparent Application Failover (TAF) 




把这个参数放在CONNECT_DATA参数下面:

额外的参数:

FAILOVER_MODE  支持下面的参数:

BACKUP: 指定故障转移节点通过它的 net service name. 

一个单独的 net service name 比不被创建在转移节点上

TYPE: Specify the type of failover. 
Three types of Oracle Net failover functionality are available by default to Oracle Call Interface (OCI) applications:


指定故障转移类型, 3种Oracle Net 故障转移类型是可用的 :

1.SESSION: session失败,例如:如果一个用户的练级丢失,然后一个新的session会自动被创建用于用户

这种故障转移类型不尝试恢复查询


SELECT :  允许用户卡开cursors 来继续获取数据在失败后。然后,这种模式涉及开销在客户端这边在正常的SELECT 操作

METHOD:指定如何快速的转移故障从主节点到备份节点:

BASIC: 基本的


建立连接在故障转移的时候,这个需要几乎没有负载在备份的数据库服务器

PRECONNECT:预连接

原文地址:https://www.cnblogs.com/hzcya1995/p/13349778.html