我們已經在AWS上部署REST API基於應用程序,有時下面的錯誤被拋出:MySQL的JDBC連接失敗錯誤
產生的原因:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: 最後從服務器成功收到的數據包是66,711,586, 毫秒前。成功發送到服務器的最後一個數據包是在66711,586毫秒前的 。比'wait_timeout'的值配置的服務器長 。在應用程序中使用之前,應考慮測試連接有效性,或者增加 服務器配置的客戶端超時值,或者使用 連接器/ J連接屬性'autoReconnect = true'來避免此 問題。在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(本機方法) 〜[NA:1.7.0_85]在 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 〜[NA:1.7.0_85]在 太陽.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 〜[na:1.7.0_85] at java.lang.reflect.Constructor.newInstance(Constructor.java:526) 〜[na:1.7.0_85] at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) 〜[mysql-connector-java-5.1.27.jar:na] at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java: 1121) 〜[mysql-connector-java-5.1.27.jar:na] at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3988) 〜[mysql-connector-java-5.1.27.jar:na] at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java: 2598) 〜[mysql-connector-java-5.1.27.jar:na] at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2778) 〜[mysql-connector-java-5.1.27。 jar:na] at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2819) 〜[mysql-connector-java-5.1.27.jar:na] at com.mysql.jdbc.ConnectionImpl.setAutoCommit (ConnectionImpl.java:5346) 〜[mysql-connector-java-5.1.27.jar:na] at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371) 〜[commons-dbcp -1.4.jar:1.4 ] at org.apache.commons.dbcp.PoolingDataSource $ PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328) 〜[commons-dbcp-1.4.jar:1.4] at org.hibernate.engine.transaction.internal.jdbc。 JdbcTransaction.doBegin(JdbcTransaction.java:72) 〜[休眠核-4.2.7.Final.jar:4.2.7.Final] ... 90個共同幀 省略
此錯誤是隨機引發而不是針對任何特定的API。
這就是在database.xml
<beans:property name="hibernateProperties">
<beans:props>
<beans:prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect
</beans:prop>
<beans:prop key="hibernate.current_session_context_class">thread</beans:prop>
<beans:prop key="hibernate.show_sql">false</beans:prop>
<beans:prop key="maxwait">10000</beans:prop>
<beans:prop key="maxidle">25</beans:prop>
<beans:prop key="minidle">5</beans:prop>
</beans:props>
</beans:property>
任何建議,可以理解的配置。
感謝, Gayithri