网上也查找过相似的问题,但没有一个能解决。。
首先说一下我这里的情况:
1,我用Oracle 自带的Net Configuration Assistant 是可以连接上的。而且连接上后我用sqlplus 可以读取数据。
2,我在程序用jdbc来访问,就会报错,信息如下:
/*Exception in thread "main" java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=153093376)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:222)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:335)
at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:334)
at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:442)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:321)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at ConnectionTest.main(ConnectionTest.java:17)   
 * */
可以肯定的是,我的url应该是没错的。如下:
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@190.1.1.51:1521:prod", "duqu", "duqu");不知道为什么。。
再说说网络环境,服务器的ip是10.122.65.8 也就是说,跟数据库服务器不是一个网段的,而且190.1.1.51好像是在域里面。。我现在的服务器没加进域。
大家帮我想想办法呀,为什么Oracle可以连上,用程序就连不上呢?在数据库服务器需要开什么端口?还是给什么访问权限?谢谢了