关于tnsnames.ora

1、

 net_service_name=
 (DESCRIPTION=
   (ADDRESS=(protocol_address_information))
   (CONNECT_DATA=
     (SERVICE_NAME=service_name)))

这是一个基本的tnsnames.ora的文件内容。DESCRIPTION写了连接描述符,ADDRESS写了有关的协议和地址,

CONNECT_DATA包括服务器的SID。

 

2、

net_service_name=
 (DESCRIPTION_LIST=
  (DESCRIPTION=
   (ADDRESS=(protocol_address_information))
   (ADDRESS=(protocol_address_information))
   (ADDRESS=(protocol_address_information))
   (CONNECT_DATA=
     (SERVICE_NAME=service_name)))
  (DESCRIPTION=
   (ADDRESS=(protocol_address_information))
   (ADDRESS=(protocol_address_information))
   (ADDRESS=(protocol_address_information))
   (CONNECT_DATA=
     (SERVICE_NAME=service_name))))

 

多个连接描述符的内容,但是oracle net manager不支持这种写法,也就是不支持一个网络服务名下有多个连接描述符。

 

3、

 

net_service_name=
 (DESCRIPTION=
  (ADDRESS_LIST=
   (LOAD_BALANCE=on)
   (FAILOVER=off)
   (ADDRESS=(protocol_address_information))                 #1
   (ADDRESS=(protocol_address_information)))                #2
  (ADDRESS_LIST=
   (LOAD_BALANCE=off)
   (FAILOVER=on)
   (ADDRESS=(protocol_address_information))                  #3
   (ADDRESS=(protocol_address_information)))                 #4
  (CONNECT_DATA=
   (SERVICE_NAME=service_name)))

多个协议地址,oracle netmanager支持这种写法,支持一个网络服务名下有多个协议地址,在此例中可以看到,在第一个协议地址中,负载均衡是开的状态,而且不开启失败转换,而第二个没开启负载均衡,而开启了失败转换。失败转换为如果连接3号协议失败了,客户端会尝试连接第四个协议地址。

具体步骤如下:

客户端会在这两个连接描述符中随机选一个进行连接,而每个一子连接描述符中的协议地址是按顺序尝试连接的。

 

4、

sample1=
 (DESCRIPTION=
   (SOURCE_ROUTE=yes)
   (ADDRESS=(PROTOCOL=tcp)(HOST=host1)(PORT=1630))    # hop 1
   (ADDRESS_LIST=                                                                   #2
     (FAILOVER=on)
     (LOAD_BALANCE=off)                                # hop 2
     (ADDRESS=(PROTOCOL=tcp)(HOST=host2a)(PORT=1630))
     (ADDRESS=(PROTOCOL=tcp)(HOST=host2b)(PORT=1630)))
   (ADDRESS=(PROTOCOL=tcp)(HOST=host3)(PORT=1521))    # hop 3
   (CONNECT_DATA=(SERVICE_NAME=Sales.us.example.com)))
如果是这样的多个协议地址,客户端会按顺序先连接1,如果1失败了,会在2的地址列表中按顺序进行尝试(因为失败转换是开启的状态)。

 

 

5、

sample2=
 (DESCRIPTION=
   (LOAD_BALANCE=on)
   (FAILOVER=on)
   (ADDRESS_LIST=
     (SOURCE_ROUTE=yes)
     (ADDRESS=(PROTOCOL=tcp)(HOST=host1)(PORT=1630))
     (ADDRESS=(PROTOCOL=tcp)(HOST=host2)(PORT=1521)))
  (ADDRESS_LIST=
     (SOURCE_ROUTE=yes)
     (ADDRESS=(PROTOCOL=tcp)(HOST=host3)(port=1630))
     (ADDRESS=(PROTOCOL=tcp)(HOST=host4)(port=1521)))
   (CONNECT_DATA=(SERVICE_NAME=sales.us.example.com)))

 

多个地址列表,客户端会在两个列表中随机选一个进行连接,这时的负载均衡和失败转换是全局的,也就是这两个协议地址的这两个状态都是开启的。在每一个协议地址中又是按顺序进行尝试连接的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值