현재 개발중인 프로젝트는 SpringBoot를 사용하여 Jetty를 내장형 웹컨테이너로 사용하고 데이터베이스는 H2Database를 사용하고 있다.
H2Database를 파일DB형식으로 사용하도록 정의했다.

spring:
  datasource:
    initialize: false
    driverClassName: org.h2.Driver
    url: jdbc:h2:file:./h2database
    username: sa
    password:

웹애플리케이션을 실행하면 기본설정에 의해서 DB가 잠기게 된다.
그런데 입력된 데이터를 보겠다고 h2console을 실행하면, 웹애플리케이션에 의해 잠긴 DB는 완전히 잠기면서 더이상이 데이터입력이 되지 않는다.
이게 이상하다고 해서…
H2Database를 Server 모드로 실행하도록 했다.

spring:
  datasource:
    initialize: false
    driverClassName: org.h2.Driver
    url: jdbc:h2:file:./h2database;AUTO_SERVER=TRUE
    username: sa
    password:

와 같이 변경했다.
굳이 h2console을 실행하지 않고 이클립스에서 찾는 방법도 확인했다. 외부에서 연결할 떄는 외부연결에 의해서 파일이 잠기지 않도록

url: jdbc:h2:file:./h2database;FILE_LOCK=NO

과 같이 설정하기 바란다.

참고문헌


+ Recent posts