大家后,请问一个问题。
      系统运行一段时间后(2年了),老是获取不到连接
      系统用的是DPCP和C3P0连接池.

解决方案 »

  1.   

    系统刚启动没问题,但是运行一段时间后(3个小时左右就连接超时了):
    java.sql.SQLException: Io 异常: Connection timed out
            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.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:826)
            at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1039)
            at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:850)
            at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1134)
            at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3339)
            at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3384)
            at qt.utils.DBCP.PooledStatement.executeQuery(PooledStatement.java:656)
      

  2.   

    可能是连接池得问题。你的oracle升级过吗?另外是不是class12.jar?如果是ojdbc14.jar得话,跟c3po连接池用可能会有问题。
    如果都不是,是不是你的数据库服务器得超时时间设置太小?另外,程序中是否关闭了连接而不是把连接放回连接池。
    还有网络是否稳定?time out得原因太多了
      

  3.   

    都是内网访问的,2台应用服务器,一台数据库服务器,今天下午调了下oracle参数,系统没有出问题,过了今天晚上还没出问题应该就有点眉目了,谢谢你