본문 바로가기
MySql

MySQL에 의해 구동되는 Hibernate 기반 Java Servlet 애플리케이션에서 Hibernate Communications Link 실패

by 베이스 공부 2020. 11. 23.
반응형

내 질문에 대해 설명하겠습니다.

Java 응용 프로그램이 있습니다-MySQL을 통한 DB 인터페이스 계층으로 Hibernate. 내 응용 프로그램에서 통신 링크 실패 오류가 발생합니다. 이 오류의 발생은 매우 특정한 경우입니다. 이 오류가 발생합니다. 약 6 시간 이상 mysql 서버를 방치하면 (즉, 약 6 시간 이상 MySQL에 대한 쿼리가 실행되지 않은 경우). 아래에 최상위 '예외'수준 설명을 붙여넣고 자세한 스택 추적 설명을 위해 pastebin 링크를 추가합니다.

javax.persistence.PersistenceException : org.hibernate.exception.JDBCConnectionException: Cannot open connection - Caused by: org.hibernate.exception.JDBCConnectionException: Cannot open connection - Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure - The last packet successfully received from the server was 1,274,868,181,212 milliseconds ago. The last packet sent successfully to the server was 0 milliseconds ago. - Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure - The last packet successfully received from the server was 1,274,868,181,212 milliseconds ago. The last packet sent successfully to the server was 0 milliseconds ago. - Caused by: java.net.ConnectException: Connection 거부 됨 : 연결



이 문제를 해결하는 올바른 접근 방식입니까? 그렇지 않다면 이것을 극복하는 올바른 방법은 무엇입니까?

다음은 stackoverflow.com의 관련 통신 링크 실패 질문이지만 답변에서 만족스러운 답변을 찾지 못했습니다.



참고 1-응용 프로그램을 계속 사용할 때이 오류가 발생하지 않습니다. 참고 2-Hibernate와 함께 JPA를 사용하므로 hibernate.dialect 등의 hibernate 속성은 META-INF 폴더의 persistence.xml 내에 있습니다 (c3p0 속성이 작동하지 않습니까?)

편집하다 - 내가 시도한 c3p0 매개 변수는 주석에 있습니다.

 

해결 방법

 

나는 전에 문제가 있었다. MySQL 서버가 연결 시간을 초과하는 것 같습니다. 시간 제한은 기본적으로 8 시간 인 28800입니다. 자세한 내용은이 링크를 참조하십시오.


도움이 되었기를 바랍니다.

 

참조 페이지 https://stackoverflow.com/questions/2912322

 

 

반응형

댓글