Centos7和用于Oracle连接的ojdbc6驱动程序似乎存在问题。连接挂起或失败导致超时。以下是我可以用来展示这个问题的最简单的程序:
import java.sql.*;
public class Test{
public static void main(String[] args){
try{
Class.forName("oracle.jdbc.OracleDriver"):
}catch(ClassNotFoundException e){System.out.println(e);}
Connection conn = null;
try{
conn = DriverManager.getConnection(...);
}catch(SQLException e){System.out.println(e);}
}
}
奇怪的是这个代码在Centos6上执行得非常好。
答案 0 :(得分:2)
我认为JDBC驱动程序与操作系统无关。但是,对于您面临的问题,您可以尝试设置JVM属性,如下所示:
-Djava.security.egd=file:///dev/urandom
请参阅此问题Oracle JDBC intermittent Connection Issue。
有关连接超时及其与服务器随机性的关系的问题在那里详细说明。