[SpringBoot] 스프링부트 data.sql 적용 안 될 때 / 실행 안 될 때 / data.sql not working

최가희·2023년 2월 9일
2

SpringBoot

목록 보기
12/13
post-thumbnail

data.sql의 쿼리가 적용 안 되는 문제에 대해 구글링 했을 때

공통으로 나오는 해결 방법은 application.properties 또는 appliation.yml 파일에 아래 코드를 추가하는 것이다. 이는 스프링부트의 2.5버전부터는 data.sql이 hibernate가 초기화되기 전에 실행되기 때문에 발생하는 문제로, 아래 코드만 추가하면 간단히 해결된다. 아니 됐었다.

  • application.properties
spring.jpa.defer-datasource-initialization=true
  • application.yml
spring:
	jpa:
    	  defer-datasource-initialization: true

스프링부트 2.7.7 버전을 사용하는 현시점에서는 위 코드만으로는 해결이 되지 않는다. 그래서 또 구글링해 본 결과, 다음과 같은 코드도 같이 추가하면 해결된다고 했지만, 여전히 해결되지 않았다.

spring.datasource.initialization-mode: always

분명 또 뭐가 바뀐 게 있겠지 싶어서 직접 >>스프링부트 2.7 configuration changelog<<를 찾아봤다.

spring.datasource.initialization-modespring.sql.init.mode로 대체되었다고 한다. 따라서 아래 코드를 추가해주면 해결된다.^0^~*

spring.sql.init.mode=always

0개의 댓글