H2 데이터베이스 설치
개발이나 테스트 용도로 가볍고 편리한 DB
h2 데이터베이스는 다음 링크에 들어가서 1.4.200 버전을 설치해보자.
https://www.h2database.com/html/download-archive.html
Archive Downloads
www.h2database.com
만약 이미 설치하고 실행까지 했다면 다시 설치한 이후에 ~/test.mv.db 파일을 꼭 삭제
h2 데이터베이스 버전은 스프링 부트 버전에 맞춘다.
권한 주기: chmod 755 h2.sh (윈도우 사용자는 x)
실행: ./h2.sh (윈도우 사용자는 h2.bat)
데이터베이스 파일 생성 방법
jdbc:h2:~/test (최초 한번)
~/test.mv.db 파일 생성 확인
이후부터는 jdbc:h2:tcp://localhost/~/test 이렇게 접속
H2 데이터베이스가 정상 생성되지 않을 때
다음과 같은 오류 메시지가 나오며 H2 데이터베이스가 정상 생성되지 않는 경우가 있다.
Database (디렉토리 경로) not found, either pre-create it or allow remote database creation(not recommended in secure environments)
해결방안은 다음과 같다.
1. H2 데이터베이스를 종료하고, 다시 시작한다.
2. 웹 브라우저가 자동 실행되면 주소창에 IP주소:포트번호로 되어있다.(ex : http://172.16.3.122:8080/...)
3. 다음과 같이 앞 부분 IP주소를 localhost로 변경하고 Enter를 입력한다.(ex : http://localhost:8080/...)
나머지 부분은 절대
변경하면 안된다. (특히 뒤에 세션 부분이 변경되면 안된다.)
4. 데이터베이스 파일을 생성하면( jdbc:h2:~/test ), 데이터베이스가 정상 생성된다.
build.gradle 파일에 jdbc, h2 데이터베이스 관련 라이브러리 추가
implementation 'org.springframework.boot:spring-boot-starter-jdbc'
runtimeOnly 'com.h2database:h2'
스프링 부트 데이터베이스 연결 설정 추가
resources/application.properties
spring.datasource.url=jdbc:h2:tcp://localhost/~/test
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.username=sa
※주의
스프링부트 2.4부터는 spring.datasource.username=sa 를 꼭 추가해주어야 한다. 그렇지 않으면 Wrong user name or password 오류가 발생한다. 참고로 다음과 같이 마지막에 공백이 들어가면 같은 오류가 발생한다. spring.datasource.username=sa <- 공백 주의, 공백은 모두 제거해야 한다.
'Spring' 카테고리의 다른 글
[스프링] 코드가 정상적으로 작동안하는 알수없는 에러 참고!!! (0) | 2022.11.08 |
---|---|
Spring war 배포할때 server.xml수정해야 되는 부분 (0) | 2022.08.17 |
Spring/MariaDB연동시 자주 발생하는 에러 (0) | 2022.08.17 |
댓글