아....
얼마전에 h2 세팅만 해놓고 다시 h2 접속하려니까 오류가 난다...
개발은 항상 개발과정보다 세팅 과정이 은근 더 어려운거 같댜ㅑ.......
1. 첫번 째 오류
(Database "/Users/*/* not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-200] 90149/90149 (도움말)
처음에 h2를 설치했을때 웹에서 따로 찾아서 설치를 했었다.
근데 이게 맥북의 버전 이슈? 로 권한 문제란다...shit..
그래서 이거는 다시 homebrew를 통해 설치했다.
1. homebrew 에서 설치
brew install h2
2. h2 서버 실행
h2 -web
이렇게 서버를 실행하면
http://172.30.1.21:8082 이런 url이 나오는데 이걸로 접속하면 h2 서버가 정상적으로 열렸다...
2. 두번 째 오류
Connection is broken: "java.net.ConnectException: Connection refused: localhost" [90067-232]
아.. 이거는 알아보니
첫번 째 문제를 해결하기 위해 처음 웹사이트에서 다운 후 brew를 통해 다시 설치 한 다음
서버 실행할때 h2 -web 이렇게 실행해서 문제가 생긴거라고 한다.
근데 좀 헷갈리는게 brew로 설치하고 바로 직후에 h2 -web 이렇게 서버를 실행했을 때는 문제가 생기지 않았는데
tcp를 통해 접속하기 위해? 서는 다른 명령어를 사용해야 하는듯 싶다
h2 -tcp -web -pg
H2 서버 실행 명령어 설명
1. h2 -web
- 이 명령어는 H2 데이터베이스의 웹 콘솔을 실행한다. 웹 콘솔은 브라우저를 통해 데이터베이스에 접근할 수 있는 인터페이스를 제공한다. 그러나 이 명령어만으로는 TCP/IP 연결을 수신하지 않는다는 문제가 있다.
2. h2 -tcp
- 이 옵션은 H2 서버를 TCP 모드로 실행! TCP 모드에서는 외부 클라이언트가 H2 데이터베이스에 연결할 수 있도록 TCP/IP 소켓을 통해 연결을 수신한다. 이 모드가 활성화되어야 다른 애플리케이션이나 클라이언트가 H2 데이터베이스에 연결할 수 있다 !
- -pg : 이 옵션은 PostgreSQL 호환 모드로 H2를 실행한다. 이 모드를 사용하면 H2 데이터베이스가 PostgreSQL의 SQL 문법과 기능을 지원하게 되며 이는 PostgreSQL과의 호환성을 위해 유용하다
이렇듯 명령어 사용에 유의하자..! 알고 쓰자!!