ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 客户端通过SCAN连接11g Oracle RAC报错ORA-12537

客户端通过SCAN连接11g Oracle RAC报错ORA-12537

原创 Linux操作系统 作者:尛样儿 时间:2010-10-17 23:40:38 0 删除 编辑

最近一直在弄Oracle 11g RAC,遇到了不少bug啊 问题啊 今天又遇到个,记录一下。
没有使用GNS来配置SCAN,通过DNS round robin 解析来配置的固定SCAN VIP和节点的VIP地址。
通过客户端连接时报错:
ERROR:
ORA-12537: TNS: 连接关闭


请输入用户名:

查找了METALINK,又是个BUG,到10.2.0.2这个bug已经被修复。

ORA-12545 or ORA-12537 Reported while Connecting to RAC through SCAN name [ID 970619.1]  

  修改时间 20-JAN-2010     类型 PROBLEM     状态 MODERATED  

In this Document
  Symptoms
  Cause
  Solution
  References


This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.

Symptoms

Error ORA-12545 or ORA-12537 reported while trying to connect to 11gR2 Real Application Cluster (RAC) database through SCAN name

Cause

Client is able to resolve all Fully Qualified Domain Name (FQDN) SCAN and VIP name but not short ones(without domain name) as its in different domain; even though FQDN names were specified during Grid Infrastructure setup, due to bug 9150053 by default DBCA set database parameter local_listener to short node VIP name while database is created.

In following example, eotcs.us.oracle.com is SCAN name and eyrac1fv.us.oracle.com is one of the node VIP name, on client machine:

ping -c 1 eotcs.us.oracle.com
PING eotcs.us.oracle.com (120.0.0.207) 56(84) bytes of data.
64 bytes from 120.0.0.207: icmp_seq=1 ttl=64 time=0.034 ms

ping -c 1 ping eotcs
ping: unknown host eotcs

ping -c 1 eyrac1fv.us.oracle.com
PING eyrac1fv.us.oracle.com (120.0.0.211) 56(84) bytes of data.
64 bytes from 120.0.0.211: icmp_seq=1 ttl=64 time=0.034 ms

ping -c 1 ping eyrac1fv
ping: unknown host eyrac1fv


 

Solution

bug 9150053 will be fixed in 11.2.0.2 and above, though easy workaround is available:

1. Database level setting:

Modify pfile/spfile parameter local_listener to use FQDN VIP name or VIP.

SQL> alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=eyrac1fv.us.oracle.com)(PORT=1521))))' sid='b2no1';

Or 

SQL> alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=120.0.0.211)(PORT=1521))))' sid='b2no1';

And register with listener:

SQL> alter system register;


2. Per client setting:

Specify FQDN SCAN name in client tnsnames.ora and add all node VIP name/IP pairs to hosts file:

grep eyrac1fv /etc/hosts
120.0.0.211     eyrac1fv.us.oracle.com eyrac1fv


Or set search domain: in /etc/resolv.conf on Linux/Unix or "Append DNS suffixes" on Windows 

  Linux/Unix:

    grep search /etc/resolv.conf
    search  us.oracle.com


  Windows:

Network Connection => Property for Public Network => Internet Protocol (TCP/IP) => Advanced => DNS => Append these DNS suffices (in order)



 

References

BUG:9150053 - ORA-12545 REPORTED WHILE CONNECTING TO 11.2 SCAN ON CLIENT
NOTE:975457.1 - How to Troubleshoot Connectivity Issue with 11gR2 SCAN Name

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23135684/viewspace-676147/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle数据库管理员,Oracle数据库系统构架员;2012年7月出版《构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化》一书;Oracle 10g OCM。

注册时间:2010-01-05

  • 博文量
    483
  • 访问量
    5651513