백엔드 개발을 하다보면 영속성이 필요한 정보를 저장해놓을 수 있는 공간이 필요합니다.
개발을 하며 보통 MySQL과 같은 데이터베이스를 많이 사용하지만 로컬 환경에서 개발하는 개발자들을 보면 H2 데이터베이스를 종종 사용하는 모습을 볼 수 있습니다.
그래서 이에 대해 자세히 알아보고자 합니다!
자바로 작성된 오픈소스 관계형 데이터베이스 관리 시스템(RDBMS)이다.
주로 로컬 개발 환경이나 테스트 환경에서 많이 사용된다.
저 같은 경우에는 스프링 프레임워크를 사용할 때 로컬 환경에서 종종 사용했습니다.
jdbc:h2:mem:...)와 파일 기반 DB(jdbc:h2:~/test) 모두 지원/h2-console 주소를 통해 브라우저에서 SQL 쿼리를 실행하고 데이터를 확인할 수 있는 GUI 제공pplication.yml 등에서 간단히 설정하여 사용 가능build.gradle에서 h2 의존성을 추가해준 뒤 application.yml 파일에 다음과 같이 설정해준다.
spring:
datasource:
url: jdbc:h2:mem:testdb
driver-class-name: org.h2.Driver
username: sa
password:
h2:
console:
enabled: true
https://www.h2database.com/html/download-archive.html
해당 url로 들어가서 버전 확인한 후 각 환경에 알맞은 버전을 다운로드 한다.
다운로드 해준 뒤, H2 데이터베이스를 실행시켜줘야 한다.
먼저 파일에 권한을 줘야하는데, MAC의 경우 다음 코드들을 터미널에 입력해주면 된다.
cd [bin 폴더 저장 경로]
chmod 755 h2.sh
./h2.sh
윈도우의 경우는 bin이 저장된 폴더로 이동한 후 바로 h2.bat을 입력하면 된다.

실행을 하면 다음과 같은 화면이 뜬다.
자신이 원하는 설정과 JDBC url을 설정해준 뒤 연결 버튼을 눌러주면 다음과 같은 화면이 보인다.

이때 url 이름을 설정해주고 나면 bin 폴더에 [저장한 이름].mv.db 파일이 생성되는 것을 확인할 수 있다.

한 번 만들어진 데이터베이스에 재접속하려면 TCP로 다시 연결해야 한다.
