首页 > 解决方案 > 连接 AWS rds mysql 实例时获取 com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

问题描述

连接到 AWS rds mysql 实例时,出现以下错误。

仅当我在同一个 tomcat 实例上部署 2 个不同的战争时才会发生这种情况。两个应用程序都连接到其对应的数据库实例(单独的数据库)。

如果我单独部署它们,我没有问题。

这是错误:

com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

27-Jul-2018 18:31:06.214 SEVERE [pool-27-thread-3] org.apache.tomcat.jdbc.pool.ConnectionPool.init Unable to create initial connections of pool.
 com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:741)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:57)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:1663)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:662)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:352)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:221)
    at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:307)
    at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:200)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:728)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:662)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:480)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:115)
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:102)
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:126)
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:139)

标签: javamysqlhibernateamazon-web-servicesrds

解决方案


推荐阅读