网站宽度设置,修改 WordPress 模板,网站vr用什么做,网站介绍模板问题#xff1a; 用户一套Oracle19c RAC集群#xff0c;出现一个奇怪的现象#xff0c;通过SCAN IP访问的连接会话都集中在节点一实例#xff0c;而且用户并没有做任何的节点服务访问去控制会话的连接节点#xff0c;比如常见的通过集群的高可用服务去控制应用访问连接集中…问题 用户一套Oracle19c RAC集群出现一个奇怪的现象通过SCAN IP访问的连接会话都集中在节点一实例而且用户并没有做任何的节点服务访问去控制会话的连接节点比如常见的通过集群的高可用服务去控制应用访问连接集中在同一节点从而避免gc产生性能消耗问题。 问题分析 因为应用都是通过scan ip去连接的数据库所以我们首先先检查了scan监听listener_scan1的服务注册情况,发现监听上面的服务注册存在问题监听上的每个服务注册实例只有节点一并没有节点二的实例这也解释了为什么应用访问RAC集群都集中在节点一的原因因为节点二实例根本就没有服务注册进scan监听 接下来检查节点二的scan监听实例配置参数remote_listener确认是否有配置向scan 监听进行注册的地址可以看到remote_listener有配置scan ip的域名以及端口 检查scan_listener的日志发现存在一些异常的报错信息,显示出现访问被拒绝的情况这里的169.254.31.131为节点二的haip
Incoming connection from 169.254.31.131 rejected
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00516:Permission denied 怀疑是不是设置了白名单访问导致的问题检查节点一的sqlnet.ora配置发现白名单的IP列表有包含整个业务网段public ip,vip,scan ip所在的网段xxx.xxx.3.* 通过跟踪数据库注册服务的过程获取进一步详细的信息需要注意的事在12c之后数据库向监听动态注册服务的后台进行为LREG (ListenerREGistration)进程不是之前版本的pmon进程对LREG开启跟踪
--查看lreg进程spid
ps -ef |grep lreg
--进行跟踪
oradebug setospid xxx
oradebug dump sqlnet_server_trace 16
--关闭跟踪
oradebug dump sqlnet_server_trace 0 分析产生的跟踪文件xxx_lreg_xxx.trc,可以看到一开始数据库是向SCAN IP:xxx.xxx.3.20的地址进行注册 但后面解析地址又返回的是scan监听所在节点的haip169.254.7.254然后遇到了错误TNS-12547,TNS-12560 为什么注册scan监听最后变成是haip的通信我们从Oracle mos官方上的文章ORA-12514 Services Fail to Register to SCAN Listeners After HAIP Offline (Doc ID 2500067.1)发现了答案原来从12c之后scan监听通过配置参数REMOTE_REGISTRATION_ADDRESS_listener_name
将haip作为远程注册的地址从而限制实例的动态服务注册只能通过haip进行 lsnrctl show remote_registration_address listener_scan1查看scan监听的远程注册地址 可以看到scan监听的远程注册地址为169.254.7.254 这时我们再重新回到之前检查scan监听的日志错误以及白名单的配置为啥会出现注册节点haip 169.254.31.131被拒绝的情况就是因为白名单里面只配置了业务网段xxx.xxx.3.*但没有加入haip网段169.254.*.*导致节点二通过haip注册节点一的scan 监听时被拒绝
Incoming connection from 169.254.31.131 rejected
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00516:Permission denied 问题解决 将haip网段169.254.*.*加入白名单的tcp.invited_nodes配置列表里面然后重启scan监听恢复正常节点二的实例也能注册到scan 监听里面