Spring

h2 error - not found, either pre-create it or allow remote database creation ...

집관리사 2020. 2. 20. 23:57

왓 더 에러

Database "C:/Users/beemi/Documents/java-qna/qna_db" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-200] 90149/90149 (Help)

 

웹 콘솔 환경에서는 보안문제로 인해 데이터베이스를 생성하지 못하는 현상이라고 한다.

 

스프링을 공부하면서 ㅗ2h2를 써보려고 다른 사람들의 튜토리얼을 따라했다.

와 아주 쉽다!

근데ㅋ

왜ㅋ

난ㅋ

안돼?ㅋㅠ

 

아래의 과정은 h2를 설치해서 직접 db를 생성해주는 과정이다.

요약하자면 다음과 같다.

1.h2를 직접 콤퓨타에 설치한다.

2.h2콘솔(8082)을 실행하고 생성할 db정보를 작성하고 db를 생성한다

3.커넥션을 끊어준다(꼭 해줘야 함. 아니면 사용중인 db라는 에러가 뜬다)

4.스프링을 재시작하고 8080 h2에서 접속

 

 

 

자세한 헛짓거리는 아래 참고

 

1. h2를 직접 설치한다

https://www.tutorialspoint.com/h2_database/h2_database_installation.htm

 

H2 Database - Installation - Tutorialspoint

H2 Database - Installation Advertisements H2 is a database written in Java. We can easily embed this database to our application by using JDBC. We can run this on many different platforms or any version of Java Runtime Environment. However, before installi

www.tutorialspoint.com

경로를 지정하고 다음

바로 가기 아이콘 같은거 안만든다 나는... 설치

저 리드미는 h2 홈페이지로 연결이 되는데....ㅎㅎ 개발 공부보다 영어 공부가 우선인 것 같다^^...

 

2. h2를 실행해보자

난 쉘알못이라 일단 직접 h2가 설치된 폴더로 들어가서..

h2하니까 만화가 생각난다 참 재밌었는데...

근데 디렉토리에는 실행 파일이 없네??

+210312 추가

멍청아.. 

bin 디렉토리에 들어가서 h2.bat 누르고 조금만 기다리면 콘솔창이 알아서 뜬다

 

 

정말 어렵다 컴퓨터ㅎㅎ..

h2를 검색하자

누르면 자동으로 http://localhost:8082/

여기로 연결된다. h2는 8082포트를 사용하나보다

연결시 뜨는 화면

여기서 새로운 데이터베이스 등록이 가능한가보다

 

3. 데이터베이스 생성

원하는 정보를 입력하고..

나는 공부용이라 사용자명과 비밀번호는 따로 입력하지 않았고 mv.db파일을 생설할 JDBC URL만 지정해줬다. 제네릭 ㅗ2 저 부분도 따로 손대지 않음.

암튼 모두 작성하고 바로 연결을 클릭하면

흑흑...드디어...연결된 화면을 볼 수 있다....ㅠㅠ

 

 그리고 해당 디렉토리에 가면

지금까지 오류만 보느라 볼 수 없었다 mv.db파일도 볼 수 있다 흑흑흑ㅎ긓ㄱ흑흐극

 

4. 이제 다시 내 웹페이지에서 저장소로 들어가보자

그 전에 저 h2콘솔을 접속 종료하라는데... 그냥 페이지를 끄면 되는걸까...(그냥 끄면 안된다.. 5번 참고)

 

암튼 그거라도 끄고 서버를 다시 켰다..두근두근

 

8080의 h2 웹콘솔로...두근두근


화면부터가 다르다 흑흑..

연결을 누르는데~!

 

Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-200] 90020/90020 (Help)

 

아니야 안꺼졌어~

응 아니다! 아직 안죽었나보다! 

 

헬프를 눌러봤지만.. 영어공부 진작에 했어야 했다는 후회밖에 안남고...

 

하 컴퓨터 너무 어렵다 정말^^...

 

5. 그래서 어떻게 끄는데..

 

아 이래서 사람은 뭐든 잘 살펴야한다. 

나는 대체 왜 이러는걸까??

 

ㅗ2는 나같은 사람들을 위해 친절하게도 중요 명령이라도 알려준다

저 아이콘들은 좌측 상단에 위치한다

눌러서 연결을 끊고 다시 4번으로 돌아가자..

 

근데 안되는데요...

 

뭘까..

난 분명 연결을 끊었는데요..

 

옛날부터 컴퓨터는 뭔가 안되면

1) 때리기

2) 재부팅 

이라고 했다.

내 노트북은 나의 노동의 산물이므로 재부팅을 해봐야겠다

 

재부팅을 하니까 연결됐다~~~~

와~~~~

아마 처음에 커넥션을 끊지 않고 바로 화면을 꺼버려서 커넥션이 남아있던게 문제였던 것 같다.

 

 

 

나는 정말 아날로그가 체질인가보다.

0과1의 세계에서 살아남을 수 있을까..?