客户端访问scan IP出现ora12545错误

news/2024/7/9 22:10:52 标签: oracle, 集群

   现场环境是oracle linux 5.7下一个双节点版本为11.2.0.4的rac集群,运行着3个数据库,有3个scan ip。

在使用过程中发现使用scan ip连接其中一个数据库服务名时经常出现oracle TNS-12545:因目标主机或对象不存在的错误,有时又能访问。使用该scan ip访问其他两个数据库服务名完全正常,未出现12545错误。随即通过vip地址尝试访问有问题的数据库,测试正常,同样未出现12545错误,判断问题与scan监听有关。

查看scan监听状态

[grid@db2 ~]$ lsnrctl status listener_scan2


LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 27-NOV-2016 13:04:40


Copyright (c) 1991, 2013, Oracle.  All rights reserved.


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))
STATUS of the LISTENER
------------------------
Alias                     listener_scan2
Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date                27-NOV-2016 12:34:08
Uptime                    0 days 0 hr. 30 min. 31 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/11.2.0/grid/network/admin/listener.ora
Listener Log File         /u01/app/grid/diag/tnslsnr/db2/listener_scan2/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN2)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.138.129.3)(PORT=1521)))
Services Summary...
Service "CAIWUXDB" has 1 instance(s).
  Instance "CAIWU1", status READY, has 1 handler(s) for this service...
Service "RLZY" has 2 instance(s).
  Instance "RLZY1", status READY, has 1 handler(s) for this service...
  Instance "RLZY2", status READY, has 1 handler(s) for this service...
Service "RLZYXDB" has 2 instance(s).
  Instance "RLZY1", status READY, has 1 handler(s) for this service...
  Instance "RLZY2", status READY, has 1 handler(s) for this service...
Service "caiwu" has 1 instance(s).
  Instance "CAIWU1", status READY, has 1 handler(s) for this service...
Service "chdyl" has 1 instance(s).
  Instance "chdyl1", status READY, has 1 handler(s) for this service...
Service "chdylXDB" has 1 instance(s).
  Instance "chdyl1", status READY, has 1 handler(s) for this service...
The command completed successfully

   从监听的状态来看,监听正常,为进一步找到问题所在,我们测试连接listener_scan2监听对应的scan ip(可通过srvctl status scan和srvctl status scan_listener获知),然后查看监听日志,监听日志在/u01/app/grid/diag/tnslsnr/db2/listener_scan2/alert/中,但建议查看/u01/app/grid/diag/tnslsnr/db2/listener_scan2/trace中的文件,发现连接的时候
监听日志出现TNS-01184及TNS-01185错误:

27-NOV-2016 12:42:12 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=root))(SERVICE_NAME=RLZY)) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.138.130.62)(PORT=35885)) * establish * RLZY * 0
27-NOV-2016 12:42:16 * service_update * chdyl1 * 0
Sun Nov 27 12:42:17 2016
27-NOV-2016 12:42:17 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=root))(SERVICE_NAME=RLZY)) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.138.130.62)(PORT=35888)) * establish * RLZY * 0
27-NOV-2016 12:42:19 * service_update * RLZY2 * 0
27-NOV-2016 12:42:19 * service_update * RLZY1 * 0
27-NOV-2016 12:42:22 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=root))(SERVICE_NAME=RLZY)) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.138.130.62)(PORT=35891)) * establish * RLZY * 0
27-NOV-2016 12:42:23 * service_register * RLZY * 1184
TNS-01184: Listener rejected registration or update of service handler "DEDICATED"
 TNS-01185: Registration attempted from a remote node
27-NOV-2016 12:42:23 * service_died * RLZY * 12537

     上google一查,该错误一般是在11.2.0.2及下版本出现,原因是是local_listener中的参数设置的主机名,需要改为该节点的VIP地址,但我这里不应该属于这种情况,但还是查看下,结果还真发现问题,虽然数据库的local_listener参数使用的是vip地址,但节点2的local_listener参数却是空:

节点2:


SQL> show parameter local_listener


NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener     string




节点1:
SQL> show parameter local_listener


NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener     string  (ADDRESS=(PROTOCOL=TCP)(HOST=
10.138.129.103)(PORT=1521))




设置节点的vip为监听地址:
SQL> alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=10.138.129.104)(PORT=1521))'  scope=both sid='RLZY2';


System altered.


SQL> alter system register;


System altered.


设置后查看:
SQL> show parameter local_listener


NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener     string (ADDRESS=(PROTOCOL=TCP)(HOST=1
0.138.129.104)(PORT=1521))


     通过设置后,经过测试再无TNS-12545错误,问题得到解决,但为什么节点2的local_listener为空就莫名其妙了。

http://www.niftyadmin.cn/n/1720965.html

相关文章

01_生活要有仪式感,换个blog

1、与2018告别 2、旧的blog太乱了 3、开源与分享 4、以前的程序员不用Linux 5、不喜欢用VScode 6、总之,向前看 转载于:https://www.cnblogs.com/venicidd/p/10318977.html

pandas39 replace替换数值( tcy)

replace-替换2019/1/4 1.函数: df.replace(to_replaceNone, valueNone, inplaceFalse, limitNone, regexFalse, methodpad) #value替换给定的值to_replace # replace动态替换不同于.loc更新(需指定要更新的位置)参数: to_repla…

weblogic部署应用出现cannot be cast to java.util.Even

在部署weblogic12.1.3的版本中部署生产应用&#xff0c;部署完成后却无法启动&#xff0c;提示“cannot be cast to java.util.Even”&#xff0c;查看weblogic日志出现如下错误信息&#xff1a; <Nov 22, 2016 8:41:36 PM CST> <Error> <Deployer> <BEA…

实例化对象的两种方式

实例化对象有两种方式&#xff1a;一种是通过关键字new&#xff0c;另一种是通过反射机制完成。转载于:https://www.cnblogs.com/Hellorxh/p/10876279.html

【洛谷 P4166】 [SCOI2007]最大土地面积(凸包,旋转卡壳)

题目链接 又调了我两个多小时巨亏 直接\(O(n^4)\)枚举4个点显然不行。 数据范围提示我们需要一个\(O(n^2)\)的算法。 于是\(O(n^2)\)枚举对角线&#xff0c;然后在这两个点两边各找一个点使其和对角线构成的三角形面积最大&#xff0c;也就是叉积的绝对值最大。显然具有单调性&…

pandas40 数据判断isna,isnull,notna,any,all( tcy)

数据判断&#xff1a;2018/11/8 2019/1/5 1.函数&#xff1a;缺省值判断 pd.isna(obj) /isnull(obj) #检测类似数组对象缺失值。 pd.notna(obj) /notnull(obj) #检测类似数组对象非缺失值。参数&#xff1a;obj&#xff1a;标量或数组 返回&#xff1a;布尔或布尔数组 说明…

python基础是什么意思_Python基础入门(一)

作为近几年大火的一门编程语言&#xff0c;数据分析的好帮手&#xff0c;你确定不来了解一下吗&#xff1f;关于Python那接下来带你花几分钟的时间入门Python。首先&#xff0c;我们先简单介绍一下它&#xff0c;学它你得知道它是个什么东西才好下手嘛。Python是一个结合了解释…

手动注册database至crs中

项目现场备用库为rac平台&#xff0c;通过duplicate方式配置备用库后&#xff0c;需要手动将database信息注册到crs中&#xff0c;方便进行集群资源管理。 添加database信息至crs中&#xff0c;需要在oracle用户下执行&#xff0c;在grid用户下执行将报错。 [oracledgdb1 ~]$ …