我的web应用在本地windows可以正常运行,
上传到一个linux的机器,就出如下错误了
用的是c3p0连接池
数据库用的是一样的c3p0连接数据库错误如下我自己加的log
       1:jdbc:mysql://10.5.16.118:3306/tdlive?useUnicode=true&autoReconnect=true&characterEncoding=UTF-8
2010-10-21 21:04:38 [http-8080-1] DEBUG DBPool:36 - 2:datasource: -u:liuhy-p:liuhy
2010-10-21 21:04:38 [http-8080-1] DEBUG DBPool:55 - 3:DBPOOL getinstance
2010-10-21 21:04:38 [http-8080-1] DEBUG DBPool:61 - 4:getConnection
2010-10-21 21:06:26 [http-8080-2] DEBUG ChannelStateDao:24 - ChannelState queryAll() run
2010-10-21 21:06:26 [http-8080-2] DEBUG DBPool:55 - 3:DBPOOL getinstance
2010-10-21 21:06:26 [http-8080-2] DEBUG DBPool:61 - 4:getConnection
2010-10-21 21:07:08 [http-8080-2] ERROR DBPool:68 - 5:can't get the connection :
java.sql.SQLException: Connections could not be acquired from the underlying database!
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
        at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)
        at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
        at com.tudou.tdlive.base.DBPool.getConnection(DBPool.java:63)
        ... 20 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
        at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319)
        at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
        at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
        ... 22 more
java.lang.RuntimeException: unable to connect to the database 
        at com.tudou.tdlive.base.DBPool.getConnection(DBPool.java:69)
        at com.tudou.tdlive.dao.CampaignDao.queryAll(CampaignDao.java:74)
        at org.apache.jsp.index_jsp._jspService(index_jsp.java:132)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
2010-10-21 21:09:08 [http-8080-1] DEBUG SceneDao:144 - Scene queryAll() run
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
        at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)
        at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
        at com.tudou.tdlive.base.DBPool.getConnection(DBPool.java:63)
        ... 20 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
        at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319)
        at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
        at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
        ... 22 more
        

解决方案 »

  1.   

    上传到linux的服务器上就不好用了?
    是不是端口问题
    端口被占用了吧
    或者该服务器不允许远程登录的吧
      

  2.   

    在linux服务器上执行mysql -u -p语句可以进入数据库
    linux上装了mysql和tomcat
    我在本地的tomcat也是访问的这个linux,可以正常运行
    上传到linux就报上述错误端口?这个应该不是吧
      

  3.   

    我写了一个简单的连接数据库的程序放linux上
    报如下错误:
    连接被拒绝了。。这可是本地连接啊,怎么成了liuhy'@'shaulptest3  com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Server connection failure during transaction. Due to underlying exception: 'java.sql.SQLException: Access denied for user 'liuhy'@'shaulptest3' (using password: YES)'.** BEGIN NESTED EXCEPTION ** java.sql.SQLException
    MESSAGE: Access denied for user 'liuhy'@'shaulptest3' (using password: YES)STACKTRACE:java.sql.SQLException: Access denied for user 'liuhy'@'shaulptest3' (using password: YES)
            at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2941)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:868)
            at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3340)
            at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1238)
            at com.mysql.jdbc.Connection.createNewIO(Connection.java:2891)
            at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
            at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
            at java.sql.DriverManager.getConnection(DriverManager.java:582)
            at java.sql.DriverManager.getConnection(DriverManager.java:185)
            at org.apache.jsp.index_jsp._jspService(index_jsp.java:102)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
            at java.lang.Thread.run(Thread.java:619)
    ** END NESTED EXCEPTION **
    Attempted reconnect 3 times. Giving up.
      

  4.   

    终于搞定了
    mysql的user表里有一行user列为空的,删除之后就好了
    god!!