본문 바로가기
DB/RDB

[H2] 원하는 이름으로 된 Non-In-Memory H2 서버 만들기

by Jordy-torvalds 2021. 10. 4.
반응형

H2로 테스트 환경을 만들 때 디스크에 인 메모리가 아닌 H2 서버를 만들고 싶을 수 있습니다. 저 또한 Flyway의 구동 원리를 테스트 하기 위한 환경을 구축하던 중 필요하게 되어 찾아봤습니다. 방법은 간단합니다.

 

1) H2 홈페이지에 접속하셔서 All Platforms 버전의 H2를 다운로드해주세요.

 

2) 압축을 푸신 후 bin 폴더에 있는 실행 파일(윈도우: h2.bat, Linux/Unix h2.sh)를 실행해주세요.

 

3) 8082 포트로 된 H2 프로세스가 실행 중인지 확인해주세요.
Window: nestat -ano | findstr 8082
Linux & Unix: netstat -antp | grep 8082

 

4) 중요한 데이터베이스 서버용 데이터 파일 생성 단계 입니다. 웹 콘솔에 접속한 후 Generic H2 (Embedded)를 선택한 후 JDBC URL을 입력합니다.
이 JDBC URL에 따라 데이터 파일이 생성 됩니다. 아래 포맷으로 입력한 후 연결 버튼을 클릭해주세요.
jdbc:h2:~/$SERVER_NAME
→ $SERVER_NAME : 데이터 파일을 생성할 서버 명(이미 존재할 경우 무시)

연결 하면 로그인 계정의 홈 경로에 아래와 같은 파일이 생성됩니다.

 

5) 이 다음 부터는 H2 프로세스만 올라와있으면 웹 콘솔이나 스프링 앱에서 붙는 것이 가능합니다.
JDBC URL을 아래와 같이 설정한 후 커넥션을 맺어 봅시다.
jdbc:h2:tcp://localhost/~/$SERVER_FILE_NAME_EXCLUDED_EXTENTION

끝!

반응형