h2 접속 안 될 때

prana·2023년 5월 16일

SpringBoot

목록 보기
3/22

문제 : h2 콘솔에 접속이 안 됨
원인: 디렉토리 경로 잘못 잡아줌
해당 공부 내용 출처 : 점프 투 스프링부트 https://wikidocs.net/161164

  • application.properties 파일에서 이렇게 작성하고,
# DATABASE
spring.h2.console.enabled=true
spring.h2.console.path=/h2-console
spring.datasource.url=jdbc:h2:~/local/✅local
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
dependencies {
	compileOnly 'org.projectlombok:lombok'
	annotationProcessor 'org.projectlombok:lombok'
	implementation 'org.springframework.boot:spring-boot-starter-web'
	implementation 'org.projectlombok:lombok:1.18.26'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
	developmentOnly 'org.springframework.boot:spring-boot-devtools'
	✅runtimeOnly 'com.h2database:h2'
}

이렇게 등록해주고,
ctrl + r 로 cmd 들어가서, C:\Users\(사용자명)에 새폴더 mkdir로 local이라는 디렉터리를 넣고, 그 안에 local.mv.db 파일을 새로 생성했다. (echo local.mv.db)

그 다음 콘솔에 접속한다. http://localhost:8080/h2-console


이렇게 적다보니.... 계속 로그인이 안되는 상황이 발생하는데..

REMOTE_DATABASE_NOT_FOUND_1
90149먼저 원격 데이터베이스 생성을 활성화하지 않고 원격으로 존재하지 않는 데이터베이스를 열려고 하면 코드 오류가 발생합니다.

해결 방법

JDBC URL: jdbc:h2:~local/local 하니까 해결됐다.
하도 안돼서 직접 h2를 다운 받아서 확인해보니, test.db파일이 새로 생성됐고,


그러고 보니 내 경로가 하나 더 local로 들어가야하는구나를 알게 됐다.

localhost에서 잘 동작하는 것을 확인할 수 있고, 이제 본격적으로 공부할 준비가 됐다!
(아 물론 이건 프로젝트에서 스프링부트 실행을 시킨 이후에 가능합니다.)

0개의 댓글