스프링 부트에서 H2를 테스트하려고 하는데 Database not found, either pre-create it ... 에러가 발생할 때
macOS 기준입니다.
스프링 부트에서 H2 콘솔을 사용하려고 하는데 아래 에러가 발생하는 경우
1
Database ... not found, either pre-create it or allow remote database creation (not recommended in secure environments)
원인은 보안 측면상 웹 콘솔 환경에서 데이터베이스를 생성할 수 없도록 막아놨기 때문에 발생한다고 합니다.
해결 방법은 홈브루(brew)를 통해 별도의 H2를 설치한 후, 그 별도의 H2 콘솔에서 데이터베이스를 생성하는 것입니다.
서버의 포트를 주의하세요. 8080은 스프링 부트의 서버 포트이며, 8082는 홈브루를 통해 설치한 H2의 서버 포트입니다.
1) 홈브루를 통해 H2 설치
터미널에 아래 명령어를 입력하세요.
1
brew install h2
2) H2 실행
터미널에 아래 명령어를 입력하세요.
1
H2
3) localhost:8082에 접속한 후 [연결] 버튼을 클릭합니다.
4) 콘솔에 정상 접속되었으면, Disconnect(아래 그림의 빨간 네모 부분) 버튼을 클릭해 데이터베이스를 종료합니다.
5) 터미널에서 control + z 버튼을 눌러 H2에서 빠져나온 후, ps 명령과 kill 명령을 이용해 실행중인 H2 프로세스를 종료합니다. (혹은 터미널 창을 닫습니다.)
6) 8080 포트(스프링 부트)로 돌아간 후 오류가 나지 않고 데이터베이스 접속이 정상적으로 되는지 확인합니다.
This post is licensed under
CC BY 4.0
by the author.





