본문 바로가기
웹 개발/db

[h2/error] database not found 에러 해결하기

by dani0312 2024. 1. 27.

 

◾에러 파악하기

h2에서 접속을 하려할 때 아래와 같은 에러가 뜰 때 해결방법에 대해 알아보자. 

 

Database "C:/Users/joyjo/jpashop" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-224]

 

현재 사용중인 H2 버전: 2.2.224

 

 

h2 1.4.198 이후 버전부터는 보안 문제로 데이터베이스가 자동으로 생성되지 않아 데이터베이스를 직접 생성해야 한다. 간단한 로컬 테스트용이라면 버전을 1.3대로 낮춰 데이터베이스 자동 생성 기능을 사용해도 된다.

 

위와 같은 에러도 자동으로 데이터베이스가 생성되지 않아 데이터베이스를 찾을수 없다는 에러였다.

 

즉 해결방법은 아래와 같다.

 

1. 버전을 낮춘다.

2. 데이터베이스를 생성하고 접속한다.

 

본 글에서는 2번을 이용해 해결해 볼 것이다. 

 

◾에러 해결하기

데이터베이스 생성하기

JDBC URL에 `jdbc:h2:~/jpashop` 와 같이 입력하고 연결을 클릭한다. jpashop부분은 원하는 데이터베이스 이름으로 하면 된다.

그러면 아래와 같은 화면이 뜰 것이다. 

에러 메시지에서 나왔던 사용자 계정 디렉토리에 가보면 아래와 같이 우리가 설정한 jpashop이름의 데이터베이스가 생성된 것을 확인할 수 있다. (이 부분은 확인용이니 생략가능하다.) 

 

 

데이터베이스 접속하기

접속할 때는 URL을 `jdbc:h2:tcp://localhost/~/jpashop` 와 같이 입력한다. 앞으로 사용을 할 때도 이 URL로 접속하면 된다.  연결 시험을 누르면 아래와 같이 시험 성공이 뜬다. 

 


/* 내가 추가한 코드 */ /* 내가 추가한 코드 끝끝 */