• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

h2 데이터베이스 관련

24.02.12 14:41 작성 24.02.12 15:00 수정 조회수 146

0

안녕하세요 h2 데이터베이스에 대한 질문이 있습니다.

 

  1. h2 데이터베이스는 "연결" 누르고 sql 실행할 수 있는 창에 들어왔다면 이게 데이터베이스 서버를 띄운건가요?

  2. 그럼 이 데이터베이스 창을 닫으면 자동으로 데이터베이스 서버를 다운시킨건가요? 그러니까 종료시킨건가요?

  3. 그럼 spring 실행을 시킬때 항상 이 h2 데이터베이스에 연결해서 접속한다음에 실행해야하는건가요?

  4. 그리고 현재는 저 한명만이 h2로 테스트하는거니까 그냥 계속 Embedded mode로 접속해도 되는거죠?

감사합니다.

답변 1

답변을 작성해보세요.

0

OMG님의 프로필

OMG

2024.02.12

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

  1. h2 데이터베이스는 "연결" 누르고 sql 실행할 수 있는 창에 들어왔다면 이게 데이터베이스 서버를 띄운건가요?

아니요, h2를 윈도우(h2.bat), 맥(h2.sh)를 통해 실행시키는 것이 데이터베이스 서버를 띄운다(= 데이터베이스 서버를 실행시킨다)라고 볼 수 있을 것 같습니다. 질문의 내용은 데이터베이스와 커넥션을 맺는다 로 보는게 더 정확할 것 같습니다.

 

  1. 그럼 이 데이터베이스 창을 닫으면 자동으로 데이터베이스 서버를 다운시킨건가요? 그러니까 종료시킨건가요

    ?

네 맞습니다. H2가 실행중인 창을 닫으면 DB서버가 다운됩니다.

창을 닫지 않고, h2가 실행중인 터미널을 통해 종료하여도 동일하게 서버를 종료시켰다고 볼 수 있습니다.

 

  1. 그럼 spring 실행을 시킬때 항상 이 h2 데이터베이스에 연결해서 접속한다음에 실행해야하는건가요?

그렇지는 않습니다. h2서버가 실행중인 상태에서 db에 접근하기 위한 설정 정보를 설정파일(properties)에 입력해놓았기 때문에 (방화벽 등으로 인해 커넥션 연결에 문제만 없다면) 실제 DB와 통신이되는 시점에서 DB가 가동중이면 됩니다.

 

  1. 그리고 현재는 저 한명만이 h2로 테스트하는거니까 그냥 계속 Embedded mode로 접속해도 되는거죠?

네 맞습니다.

 

감사합니다.

mintuchel님의 프로필

mintuchel

질문자

2024.02.12

아하 그럼 h2.bat이나 h2.sh 실행시키면 뜨는 cmd 창이 서버가 띄워진걸 뜻하는거군요. 명절 연휴에도 자세한 답변 감사합니다! 연휴 잘 마무리하십쇼!