TNS-01153错误

来源:互联网 发布:php二次开发ecshop 编辑:程序博客网 时间:2024/04/27 23:33

今天周六,上午8-12点进行数据库拆分,拆分完成后部分应用程序出现连接错误,查看grid下的日志文件发现如下内容:

TNS-01153: Failed to process string: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.1.82)(PORT=1521))(CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))null)) NL-00303: syntax error in NV string

查阅资料如下:

Jdbc Connection Issues Having The TNS-1153 Error In The Listener Log [ID 1364680.1]     
 
In this Document
  Symptoms
  Cause
  Solution
________________________________________
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.
Applies to: 
JDBC - Version: 11.2.0.2 and later   [Release: 11.2 and later ]
Information in this document applies to any platform.
Symptoms

On : 11.2.0.2 version, JDBC for Java

When attempting to connect from a java program using the JBC Driver 11.2.0.2,
the following error occurs.

ERROR
-----------------------
In the application side:
Exception java.sql.SQLException: Io exception: Connection refused(DESCRIPTION=(ERR=1153)(VSNNUM=186647040)(ERROR_STACK=(ERROR=(CODE=1153)(EMFI=4)(ARGS='(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.201.60.115)(PORT=1521))(CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))null))'))(ERROR=(CODE=303)(EMFI=1))))
Exception java.sql.SQLException: Io exception: Connection refused(DESCRIPTION=(ERR=1153)(VSNNUM=186647040)(ERROR_STACK=(ERROR=(CODE=1153)(EMFI=4)(ARGS='(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.201.60.115)(PORT=1521))(CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))null))'))(ERROR=(CODE=303)(EMFI=1))))
Exception java.sql.SQLException: Io exception: Connection refused(DESCRIPTION=(ERR=1153)(VSNNUM=186647040)(ERROR_STACK=(ERROR=(CODE=1153)(EMFI=4)(ARGS='(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.201.60.115)(PORT=1521))(CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))null))'))(ERROR=(CODE=303)(EMFI=1))))


In the listener log file:
14-SEP-2011 16:25:21 * 1153
TNS-01153: Failed to process string: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.201.60.115)(PORT=1521))(CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))null))
NL-00303: syntax error in NV string

Cause

The problem was caused by the inclusion of multiple JDBC jar files in the classpath.
In this case it was included the classes12.jar and the ojdbc6.jar. These two jar files were from different version and this was causing the issue.
Solution

As the problem was caused by the inclusion of multiple JDBC jar files in the classpath.
It was taken out the classes12.jar file from the classpath and this fixed the issue.

看来这个问题是由于jdbc驱动和11g scan ip引起的,由于应用程序很大一部分是cs结构,更新JDBC工作量太大,只好放弃scanip,使用private ip

修改连接信息后,程序一切正常

原创粉丝点击