H2DB란
H2 데이터베이스는 인메모리 데이터 베이스로, 메모리 상에서 데이터를 처리하기 때문에 디스크 기반의 데이터베이스보다 훨씬 빠른 속도를 제공한다. H2 데이터베이스는 주로 개발 단계나 테스트 단계에서 사용되며, 별도의 설치 없이 사용할 수 있어 편리하다.
H2DB 특징
- H2DB는 자바 기반의 오픈소스 관계형 데이터베이스 관리 시스템(DBMS)
- 서버(Server) 모드와 임베디드(Embedded) 모드의 인메모리 DB 기능을 지원
더보기서버 모드
H2 데이터 베이스가 별도의 서버 프로세스로 실행되며, 여러 클라이언트가 동시에 접속할 수 있습니다. 이 모드는 여러 사용자가 동시에 데이터베이스에 접근해야 하는 환경에 적합합니다.
임베디드 모드
H2 데이터베이스가 사용자의 애플리케이션과 같은 JVM 내에서 실행된다. 이 모드는 애플리케이션과 데이터베이스가 동일한 프로세스에서 실행되어야 하는 환경에 적합하다. 임베디드 모드에서는 단일 사용자만 데이터베이스에 접속할 수 있다. - 브라우저 기반의 콘솔 모드를 이용할 수 있음
더보기별도의 클라이언트 소프트웨어를 설치할 필요 없이, 웹 브라우저가 설치된 어떤 기기에서나 데이터베이스에 접근할 수 있다. 사용자는 복잡한 명령어나 별도의 도구 없이도 데이터베이스를 쉽게 관리할 수 있다. - 별도 설치과정이 없고 2.5MB 이하의 저용량 DB
- 표준 SQL의 대부분을 지원
H2DB 설치하기
https://www.h2database.com/html/main.html
All Platforms를 눌러 다운로드
압축을 풀고 bin 디렉토리 아래의 h2.bat(Linux 계열은 h2.sh) 또는 h2w.bat을 실행하면 서버 모드로 실행된다.
JDBC URL의 test에 DB명을 넣어주면 DB가 생성된다. test 이름 그대로 진행했음.
사용자명과 비밀번호는 생략 가능
사용자 계정 디렉토리에 test.mv.db 파일이 생성된다.
접속이 완료되었다면 테이블 생성 및 테이블 조작(DML)이 가능하다.
H2DB TCP 모드로 서버 접속
다시 로그인 화면으로 돌아가서 TCP로 접속한다.
-> 데이터베이스 파일을 생성한 후 TCP 소켓을 통해 접속해야 어플리케이션과 콘솔을 동시에 접근했을 때 오류가 발생하지 않기 때문이다.
저장한 설정 : Generic H2 (Server)
JDBC URL : jdbc:h2:tcp://localhost/~/test
참고 자료: