Java应用程序未使用主机名连接Oracle DB
我的java应用程序正在使用odbc14连接Oracle11g。在重新启动linux服务器之前,它工作正常 现在,我的应用程序只使用直接IP地址,而不使用主机名 我不知道在我的服务器中重置了什么设置。 现在我在使用主机名时遇到以下异常 java.sql.SQLException:Io异常:网络适配器无法启动 建立连接 代码: tnsping的产量:Java应用程序未使用主机名连接Oracle DB,java,oracle,Java,Oracle,我的java应用程序正在使用odbc14连接Oracle11g。在重新启动linux服务器之前,它工作正常 现在,我的应用程序只使用直接IP地址,而不使用主机名 我不知道在我的服务器中重置了什么设置。 现在我在使用主机名时遇到以下异常 java.sql.SQLException:Io异常:网络适配器无法启动 建立连接 代码: tnsping的产量: ]$ tnsping Server099 TNS Ping Utility for Linux: Version 11.2.0.1.0 - Pro
]$ tnsping Server099
TNS Ping Utility for Linux: Version 11.2.0.1.0 - Production on 01-MAR-2016 14:02:54
Copyright (c) 1997, 2009, Oracle. All rights reserved.
Used parameter files:
/home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
Used EZCONNECT adapter to resolve the alias
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS= (PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.99)(PORT=1521)))
正常(0毫秒)
堆栈跟踪:
2016-03-01 14:17:37,496 ERROR ussd.DB_Conn.DBCon:110 Error in connecting Primary DB java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
2016-03-01 14:17:37496错误ussd.DB_Conn.DBCon:110连接主数据库时出错java.sql.SQLException:Io异常:网络适配器无法建立连接
java.sql.SQLException:Io异常:网络适配器无法建立连接
位于oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
位于oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
位于oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
位于oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
位于oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:414)
位于oracle.jdbc.driver.T4CConnection(T4CConnection.java:165)
位于oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
位于oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
位于java.sql.DriverManager.getConnection(DriverManager.java:571)
位于java.sql.DriverManager.getConnection(DriverManager.java:215)
您是否通过tnsping命令检查服务器地址
tnsping网络服务名称
可能是地址已更改或数据库未启动。尝试此操作以确保所有10次连接尝试都成功,以确保不存在网络问题:
]$tnsping Server099 10我更正了从 DB_URL=“jdbc:oracle:thin:@”+IP+:“+port+”:“+DBNAME 到
DB_URL=“jdbc:oracle:thin:@/“+IP+”:“+port+”/“+DBNAME 不相关,但是:为什么要使用完全过时的JDBC驱动程序?你真的还在使用Java1.4吗?但错误消息表明服务器(或侦听器未运行)tnsping&code updatejust好奇-在tns ping中,您使用的是Server099,在代码中是Server99,这是故意的吗?不,只是误会,实际上它只有Server099。我能够与直接IP连接,
2016-03-01 14:17:37,496 ERROR ussd.DB_Conn.DBCon:110 Error in connecting Primary DB java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)