TNS-12532: TNS:invalid argument,Oracle的报错信息太让人无语

原创 2014年01月07日 00:06:48
TNS-12532: TNS:invalid argument,Oracle的报错信息太让人无语
现象:
Tnsping报错:
[oracle@unicomGZ01 admin]$ ../../bin/tnsping orcl

TNS Ping Utility for Linux: Version 11.1.0.6.0 - Production on 16-MAY-2013 15:27:00

Copyright (c) 1997, 2007, Oracle. All rights reserved.

Used parameter files:


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.9.180)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl)))
TNS-12532: TNS:invalid argument
[oracle@unicomGZ01 admin]$

但只要将iptables关闭之后,tnsping可以正常连通,看来是iptables的问题,不过问题重点不在iptables,
重点在于Oracle的报错信息TNS-12532: TNS:invalid argument,让我一直误以为是tnsnames.ora的配置格式有问题,
又是重新复制粘贴,又是手工敲配置,又是做trace,白白耽误了不少时间。

Oracle的文档倒是有说明:11g: TNS-12532 / ORA-12532 Reported When Firewall Is Enabled (Doc ID 748466.1)
Applies to:
Oracle Net Services - Version: 11.1.0.6.0
 This problem can occur on any platform.

Symptoms
Firewall is enabled between the clients and server.
On trying to connect from the client host, the following error is reported :
ORA - 12532: TNS : invalid argument
Client trace indicates the following :
ntt2err: soc <XXXX> error - operation=1, ntresnt[0]=502, ntresnt[1]=113, ntresnt[2]=0
ntt2err: exit
nttcni: exit
nttcon: exit
nserror: entry
nserror: nsres: id=0, op=65, ns=12532, ns2=12560; nt[0]=502, nt[1]=113, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
nsopen: unable to open transport
Here the OS error is 113 -No route to host in Linux platform.

Cause
 The cause of the issue is either the firewall is blocking the connection or there is an network issue.
 
Solution
 
You may check the same by trying a telnet to the listener port from the same client where sqlplus connection failed.
$ telnet <db server IP> <listener Port>
The above would return a blank screen with blinking cursor. Note that the above would also fail if you are facing transport issues.
As the underlying cause for the issue is the firewall that has been enabled, take assistance of the network administrator to momentarily disable the firewall on the server host
Once done, re-try the connection from the client host.
There is an unpublished internal bug 6031201 being worked upon by our development team to correct the error code raised from client.
Incorrect error message "TNS:invalid argument" being reported is misleading and needs to corrected to something like "TNS:connection refused"

看来Oracle也意识到了这个失误,并把这个报错信息当成了一个unpublished Bug在以后的版本中进行了修正。

TNS-12532: TNS:invalid argument 错误的解决!

C:/Documents and Settings/user>tnsping HENRYDB TNS Ping Utility for 32-bit Windows: Version 11.1.0.6...
  • henrybai
  • henrybai
  • 2009年12月16日 13:11
  • 8576

accept: Invalid argument问题解决

socklen_t clilen;     struct sockaddr_in clientaddr;     connfd = accept(listenfd,(sockaddr *)&cli...
  • blue_bm
  • blue_bm
  • 2014年01月26日 13:56
  • 409

安装实例中出现的ORA-27123和ORA-12532的错误

在装数据库软件的过程中没有出现过异常,顺利安装结束。在装数据库实例的时候报了ORA-27123和ORA-12532的错误。安装的服务器是惠普服务器256G内存,具体型号不得而知。 问题一:ORA-27...
  • Zha_PenFee
  • Zha_PenFee
  • 2015年11月26日 19:24
  • 1727

导入文件到sd卡报错 transfer error: Invalid argument 因为文件名是中文

sdk adt 装完之后我就开始尝试导入MP3文件。导入的步骤如下: 进入file explorer 选中mnt-sdcard-Music,单击导入按钮之后选中MP3文件导入。控制台则显示 [20...
  • u010509143
  • u010509143
  • 2014年04月17日 14:13
  • 1477

mmap报错Invalid argument的解决办法

mmap这个函数到处都用到,很多问题都是用perror("mmap")出来的结果是Invalid argument 这个问题,我遇到有两种可能导致 1. open文件时的用的访问模式如O_RDON...
  • zgl07
  • zgl07
  • 2013年04月29日 15:13
  • 2974

查看、修改linux系统的最大链接数限制、文件描述符限制、端口范围限制、虚拟内存等

由于socket在linux中也是用文件描述符来表示,因此最大连接数的修改与文件描述符的限制是同一个问题, 1、查看当前文件描述符的限制数目的命令:  ulimit -n   2、修改文件描述符的限制...
  • hjx_1000
  • hjx_1000
  • 2013年10月10日 16:48
  • 4455

Python中sort以及sorted函数初探

sorted(...) Help on built-in function sorted in module __builtin__: sorted(...)     sorted(iterable,...
  • tanzhangwen
  • tanzhangwen
  • 2014年10月24日 12:19
  • 5520

利用loadrunner做性能测试过程中遇到的问题

一、插入检查点时,报错: Error -27216: Invalid argument (number 4)   [MsgId: MERR-27216] Registering web_reg_f...
  • he_jian1
  • he_jian1
  • 2014年12月08日 17:54
  • 4832

ARM开发板上iconv_open(“utf-8", "gb2312”) 调用失败的解决方法

ARM开发板上iconv_open("utf-8", "gb2312") 调用失败的解决方法 应用程序代码如下: static int code_convert(char* from_char...
  • lvwx369
  • lvwx369
  • 2014年09月12日 15:06
  • 2341

Linux下清除缓存 drop_caches,sysctl(备忘)

1. 用命令 free -m 查看一下内存的使用情况: 然后清除缓存后再来查看一下内存的使用情况: 前后对比可发现,缓存由之前的110M缩小到了25M,效果比较明显。 2. 下面说一下 d...
  • Sky_qing
  • Sky_qing
  • 2013年05月29日 13:19
  • 19734
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TNS-12532: TNS:invalid argument,Oracle的报错信息太让人无语
举报原因:
原因补充:

(最多只允许输入30个字)