집 >데이터 베이스 >MySQL 튜토리얼 >Spring Boot JPA/Hibernate 데이터베이스 연결 중단을 해결하는 방법은 무엇입니까?
jpa-hibernate를 사용하여 Spring Boot에서 데이터베이스 연결 중단 해결
오류 메시지는 Spring Boot 애플리케이션과 MySQL 데이터베이스 간의 연결을 나타냅니다. 서버에 구성된 대기 시간 제한을 초과하여 활동이 없어 종료되었습니다. 이 문제를 해결하기 위해 다음과 같은 몇 가지 권장 접근 방식이 있습니다.
1. 자동 재연결 활성화:
즉시 해결 방법은 JDBC URL에서 자동 재연결을 활성화하는 것입니다:
spring.datasource.url = jdbc:mysql://localhost:3306/test?autoReconnect=true
그러나 이 방법은 작업 중에 예기치 않은 동작이 발생할 수 있으므로 권장되지 않습니다. 활성 거래.
2. 연결 유효성 검사:
더 효과적인 접근 방식은 애플리케이션 수명 전반에 걸쳐 연결 유효성 검사를 활성화하는 것입니다. 다음 속성을 구성합니다.
최대 활성 연결:
spring.datasource.max-active=10
초기 연결:
spring.datasource.initial-size=5
유휴 연결 제한:
spring.datasource.max-idle=5 spring.datasource.min-idle=1
검증 쿼리 및 타이밍:
spring.datasource.test-while-idle=true spring.datasource.test-on-borrow=true spring.datasource.validation-query=SELECT 1 spring.datasource.time-between-eviction-runs-millis=5000 spring.datasource.min-evictable-idle-time-millis=60000
이 구성을 사용하면 유휴 연결이 정기적으로 검증되고 연결이 끊어집니다. 풀에서 제거됩니다.
3. HikariCP 연결 풀:
Spring Boot 2.x는 기본적으로 HikariCP를 연결 풀로 사용합니다. HikariCP는 자동 연결 유효성 검사를 제공하므로 유효성 검사 쿼리 속성을 생략할 수 있습니다.
참고: 유효성 검사 쿼리를 사용하는 것은 권장되지 않지만 HikariCP에는 자체 연결 유효성 검사 방법이 있습니다. 효율적입니다.
위 내용은 Spring Boot JPA/Hibernate 데이터베이스 연결 중단을 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!