인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

asil님의 프로필 이미지
asil

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

순수 JDBC

H2 콘솔, spring

해결된 질문

작성

·

500

0

안녕하세요

H2 사용 중에 문제가 있어서 문의 드립니다

 

아래 문의글도 읽어봤는데 저와 같은 상황인 분이 한 분계시네요

 

회원 목록 진입 시

org.h2.jdbc.JdbcSQLNonTransientConnectionException: Database may be already in use: null

이 문제인데

재부팅 후에 h2.bat을 켜지 않고

켜지 않고 spring만 구동하면 회원 목록이 잘 나옵니다

아무 문제 없이 잘 됩니다

다만 당연히 H2 콘솔에 접속할 수 없습니다

H2콘솔에 접속하고 싶어서 h2.bat을 실행하면, H2 콘솔에 접속할 수 있지만 회원 목록을 볼 수 없습니다

JDBC URL은 jdbc:h2:tcp://localhost/~/test 이렇게 하라고 하신 글 보고 따라한 상황입니다

 

강의하실 떄는 분명히 웹에서 콘솔도 보고 spring 구동도 하셔서 회원 목록도 보시는 거 같은데

 

저는 이 2개가 동시에 진행되지 않네요

 

어떻게하면 둘 다 볼 수 있을까요?

답변 1

1

안녕하세요. asilhatred님, 공식 서포터즈 OMG입니다.

사용하시는 H2 버전과 스프링부트 버전이 어떻게 될까요?

브라우저에서 접속 시도하는 url 정보가 IP인지 localhost인지도 알려주세요.



감사합니다.

asil님의 프로필 이미지
asil
질문자

안녕하세요
H2는 1.4.200 이고
스프링부트는 2.6.2 입니다

그리고 접속 시도하는 URL이 http://localhost:8082/login.do ~~~~~~

이걸 말씀하시는 거라면 localhost, 제 IP 둘 다 해봤습니다

 

감사합니다

영한님께서 h2 설치 강의 영상에서도 설명해주시고 계시지만 잘 안되는 경우 초기세팅으로 하여 다시 진행해보시라고 말씀하시고 계신데요, test.mv.db를 지우고 다시 진행해보시겠어요?

테스트 해본 결과 스프링부트 2.6.2 + h2 1.4.200으로 강의에서 영한님이 설명하시는 순서 그대로 진행하였을 경우 문제 없이 동작하였습니다. 

 

h2 설치 강의를 참고하여 순서대로 다시 진행 후 결과를 공유해주세요.

asil님의 프로필 이미지
asil
질문자

네 강의 내용 보면서 다시 진행했습니다

 

1. test.mv.db, test.trace.db, h2 삭제

2. 재부팅

3. h2 1.4.200 다운로드

4. h2.bat 실행

5. jdbc:h2:~/test 로 접속

6. C:\Users\유저명 에 test.mv.db 생성 확인

7. 접속 해제 후 jdbc:h2:tcp://localhost/~/test 로 접속

8. intellij 에서 StudySpringApplication 구동

9. Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-200] 에러 확인

 

다른 컴퓨터로 다시 해보고 결과 공유하겠습니다... 쉽지 않네요 ㅎㅎ

asil님의 프로필 이미지
asil
질문자

아.. 제가 어리석었습니다

혹시나 싶어서 소스 처음부터 다시 다 작성하면서 알아냈습니다

 

application.properties에

spring.datasource.url=jdbc:h2:~/test 이렇게 넣고 있었네요

도대체 왜 그랬는지.......

지금 spring.datasource.url=jdbc:h2:tcp://localhost/~/test 이렇게 변경 후 정상 동작확인했습니다

 

긴 시간 내주셨는데 죄송합니다

혹시 같은 문제를 겪는 분 계신다면 저 같은 실수 없으시길 바랍니다

 

감사합니다

asil님의 프로필 이미지
asil

작성한 질문수

질문하기