[JAVA WAS] H2 DB 연동

Zoonmy·2024년 6월 26일

JAVA WAS

목록 보기
5/5

이번 프로젝트를 진행하면서, H2 데이터베이스 를 사용해보게 되어, 설치법 공유!


H2 DB?

  • H2는 자바로 작성된 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)
  • H2 데이터베이스는 내장 모드와 서버 모드 모두에서 동작 가능
  • 개발 환경에서 빠르고 쉽게 사용할 수 있는 경량 데이터베이스
  • 테스트 및 프로토타이핑에 유용

특징

  • 경량성: H2는 경량 데이터베이스로, 메모리와 디스크 모두에서 작동 가능
  • 임베디드 및 서버 모드: H2는 자바 애플리케이션에 내장될 수 있는 임베디드 모드와 클라이언트-서버 방식으로 사용할 수 있는 서버 모드를 지원
  • 호환성: H2는 다양한 SQL 기능을 지원하며, 다른 주요 데이터베이스(MySQL, PostgreSQL 등)와의 호환성을 제공하는 모드를 지원

    이러한 점을 통해 Spring Data 에서 따로 설정하지 않고, MySQL로 어댑터만 바꾸어 주어도 동작!

    데이터베이스 이식성(Database Portability) 이라고 한다!

    • 특정 데이터베이스에서 작성된 코드가 다른 데이터베이스로 쉽게 전환될 수 있는 능력
  • 빠른 성능: 인메모리 모드에서 특히 빠른 성능을 제공하여 단위 테스트 및 애플리케이션 프로토타이핑에 적합
  • 웹 콘솔: H2는 편리한 웹 기반 콘솔을 제공하여 데이터베이스를 관리하고 쿼리를 실행 가능
  • 오픈 소스: H2는 Apache 2.0 라이선스로 제공되는 오픈 소스 프로젝트

구동 환경

OS : Mac OS
JAVA : JAVA 17
IDE : IntelliJ

1) H2 Database 설치

  • ZIP 파일을 다운!

H2 데이터베이스 다운로드 페이지

  • 압축을 풀고 /bin 폴더로 들어간다

  • 터미널을 연다

  • h2.sh 파일을 실행시키기 위해 권한을 설정한다
chmod 755 ./h2.sh

  • h2.sh 쉘 스크립트 파일을 실행한다 → 앞으로 DB를 실행시키기 위해서는 해당 명령어로 동작한다.

  • 이 터미널이 종료되게 되면, DB의 연결도 종료된다.

실행 화면

  • 요상한 코쟁이가 뜬다

2) DB 설정

  • DB의 이름을 설정해준다


If) 설정 이름을 삭제해서 “Generic H2 (Embedded)가 안보인다면??

  • User 디렉토리로 들어가서 리눅스 명령어 ls -al 을 치면 .h2.server.properties 파일이 보인다

  • 해당 파일을 지워주면 해결~!
rm .h2.server.properties

  • 위 화면에서 연결 버튼을 누르면 /user 디렉토리에 [설정한 이름].mv.db 가 생긴다

3) IntelliJ에 DB 연동

  • 여기서 h2 데이터베이스를 누른다

  • URL을 변경한다
jdbc:h2:tcp://localhost/~/was
  • 여기서 / 을 하면 빨간줄이 뜰 떄도 있는데 상관없다
profile
열시미 해야쥐

0개의 댓글