본문 바로가기
Spring

Spring Boot 에서 H2 innodb 오류 해결

by 박주봉 2020. 5. 22.

문제

Spring Boot Version 을 2.1.9 에서 2.2.1 로 업그레이드를 하고 local 에서 h2-console 로 DB를 테스트 해보니 갑자기 안나던 오류가 났다.

JPA ddl-auto를 끄고 실행 결과 h2-console은 정상적으로 접속이 가능했다.

create table user (id bigint not null auto_increment, created_date datetime, modified_date datetime, email varchar(255) not null, name varchar(255) not null, password varchar(255), picture varchar(255), role varchar(255) not null, primary key (id)) engine=InnoDB

느낌상... engine=InnoDB 를 제거하고 ddl문을 날린 결과 정상적으로 테이블이 등록됬다.

원인

검색 결과 spring boot version이 2.1.10 버전 이상부터는 조금 복잡한 설정이 추가되어야 한다고 한다.

github.com/jojoldu/freelec-springboot2-webservice/issues/67#issuecomment-566523952

해결

yml 추가

  • yml 파일에 jdbc-url: jdbc:h2:mem://localhost/~/testdb;MODE=MYSQL 부분을 추가
  • localhost h2-console로 접속한 뒤 JDBC URL을 jdbc-url 그대로 복사

 

 

'Spring' 카테고리의 다른 글

Spring WebFlux  (0) 2021.07.23
Spring Boot에서 JWT 사용하기  (0) 2020.05.18

댓글