oracle多个实例提示listener,Oracle Local_listener和remote_listener案例--应用访问异常

Oracle RAC负载均衡:

1. 客户端

通过指定连接串中的LOAD_BALANCE = YES指定负载均衡节点。默认不开启。

2. server端

通过 local_listener 和 remote_listener 来知道本地和远端的负载情况进行负载分配

通过负载均衡,可以保证连接数层面的负载均衡。需要建议结合DNS使用。

分享下常见案例:

环境:

11.2.0.4

正确配置:

local_listener=(ADDRESS=(PROTOCOL=TCP)(HOST=local_vip_address)(PORT=1521))

remote_listener=scan_name:scan_port

案例一:local_listener配置错误:

现象:

数据库进行参数配置包含ASM,重启GI后发现数据库无法连接。很明显重启大法并不适用,而且做了重启和参数修改的动作,首先参数层面没有涉及监听或者连接相关的参数,排除掉。

疑问:

重启为什么会导致链接问题?

问题排查:

数据库连接不上,现象是链接超时,端口不通,发现local参数设置的不对,日志中有修改动作:

SUCCESS: diskgroup DATA was mounted

NOTE: dependency between database RAC and diskgroup resource ora.DATA.dg is established

Tue Jul 07 22:28:46 2020

ALTER SYSTEM SET local_listener=' (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.168.173)(PORT=1521))','(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.168.173)(PORT=1523))' SCOPE=MEMORY SID='RAC1';

原因分析:这个参数不是我们手工修改的,是GI拉起DB的时候自动设置的。这里的1523端口确实也是我们使用的,系统里有这样一个Listener用的是1523,尽管这不是Oracle的预期行为,但是这类问题确实要引起注意。

有相关的bug,没有最终确认:Parameter LOCAL_LISTENER is changed to the default value by the GI agent (Doc ID 1470041.1)

案例二:remote_listener配置错误

现象:

也是重启,重启后应用无法连接,前人挖坑后人踩。这次重启是异常重启,不是维护重启,重启的原因就不赘述,主要看启动后remote_listener导致的问题,这个参数重启后置空导致应用访问异常。

原因:为什么会置空?

查看之前有人手动修改过这个参数,参数没有固化到spfile中,只修改到了memory中,而出现这种操作的原因是实例使用了pfile启动,并未使用spfile,所以一连串的坑导致了重启后参数丢失。

总结:

后续会更新到链接异常的排查思路中,另外这两个配置也要放到数据库常规检测项中,避免重复踩坑。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值