매일 조금씩

Entity가 생성되지 않아서 data.sql 실행에 실패하는 에러 (feat. Spring boot의 DB 초기화) 본문

Spring Framework

Entity가 생성되지 않아서 data.sql 실행에 실패하는 에러 (feat. Spring boot의 DB 초기화)

mezo 2024. 11. 8. 17:18
728x90
반응형

 

 

spring.jpa.hibernate.ddl-auto와 data.sql 실행 순서 !!

  • spring.jpa.hibernate.ddl-auto 옵션은 JPA가 엔티티를 기반으로 데이터베이스 테이블을 자동 생성하게 한다.
  • 그러나 Spring Boot 2.5 이후, data.sql 파일이 실행되는 순서가 달라지면서 JPA의 테이블 생성 작업이 완료되기 전에 data.sql이 실행될 수 있는 문제가 발생했다고 한다..
  • 해결을 위해 spring.jpa.defer-datasource-initialization=true를 application.yml에 추가 설정하여 JPA가 엔티티를 기반으로 테이블을 생성한 후에 data.sql이 실행되도록 보장했다.

 

 

 

 

 

728x90
반응형