2014-12-03 166 views
2

我的问题是我尝试连接到远程Oracle数据库。它的版本是9.2.0.6,我使用jdk 1.7和ojdbc14.jar。尝试连接到Oracle数据库时出现java.sql.SQLException

这是代码:

Connection connection = null; 

    try { 

     connection = DriverManager.getConnection("jdbc:oracle:thin:@//10.130.34.3:1522/myDB", "binette","Passer"); 

    } catch (SQLException e) { 

     System.out.println("Connection Failed! Check output console"); 
     e.printStackTrace(); 
     return; 

    } 

,我得到这个错误:

Connection Failed! Check output console 
java.sql.SQLException: Exception d'E/S: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=153093632)(ERR=12514)(ERROR_STACK=(ERROR=(CODE=12514)(EMFI=4)))) 
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) 
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179) 
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334) 
    at oracle.jdbc.ttc7.TTC7Protocol.handleIOException(TTC7Protocol.java:3668) 
    at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:353) 
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:371) 
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:551) 
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:351) 
    at java.sql.DriverManager.getConnection(DriverManager.java:571) 

我试图缠得的JDBC JAR到classes12.jar却是同样的错误。 我已经在互联网上搜索,但我无法弄清楚问题。请任何想法?

+0

请参考以下链接。 http://stackoverflow.com/questions/6503144/io-exception-connection-refuseddescription-tmp-vsnnum-168821248err-12505 – Sush 2014-12-03 09:39:03

回答

1

看起来像ORA-12514: TNS:listener does not currently know of service requested in connect descriptor(根据错误代码)。 所以也许你的服务名称不是myDB

0

根据您的数据库配置,你应该尝试的

connection = DriverManager.getConnection("jdbc:oracle:thin:@//10.130.34.3:1522:myDB", "binette","Passer"); 

代替

connection = DriverManager.getConnection("jdbc:oracle:thin:@//10.130.34.3:1522/myDB", "binette","Passer"); 
+2

两个连接字符串有什么区别? – Kumar 2014-12-03 10:26:56

+0

在第一个ine端口和实例名称之间用':'分隔,在第二个端口和实例名称之间用'/'分隔。 – StephaneM 2014-12-03 12:43:36

0

我认为它是一个防火墙问题。尝试在防火墙中打开端口,然后检查。

0

我解决了我的问题。所以我没有连接到正确的数据库。现在连接通过!谢谢! :-)

相关问题