[DB] H2를 설치하다 만난 이슈 모음 ZIP 📁 (+ 해결 방법)

송하연·2024년 3월 15일
1
post-thumbnail
H2 Database 다운로드 및 사용법을 알아보자

1. h2.sh 실행시 zsh: permission denied: ./bin/h2.sh

문제
터미널에서 h2.sh 실행 시 zsh: permission denied: ./bin/h2.sh 에러가 뜨는 경우

해결 방법
파일 권한 때문에 발생하는 문제로 chmod 755 h2.sh 명령어로 권한을 부여해준다.

2. h2.sh 실행 시 무한 로딩 문제

문제
h2.sh 실행 시 열린 웹페이지에서 무한 로딩이 발생하는 경우

해결 방법
URL의 IP 주소를 localhost로 변경하면 된다.
혹은 http://localhost:8082로 접속하면 된다.

3. h2 연결 실패 에러(데이터 베이스를 찾을 수 없는 에러)

문제
h2 콘솔 창에서 Test Connection(연결 시험), Connect(연결) 시 해당 에러 메세지가 뜨는 경우
Database "/Users/{유저명}/{데이터베이스명}" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-224] 90149/90149 (도움말)

해결 방법
/Users/{유저명} 디렉토리 내에 {데이터베이스명}이라는 이름의 database가 없어서 h2에서 읽어올 수 없기 때문에 발생하는 에러이다.db 파일을 생성하기 위해 두 가지 방법 중 하나를 사용하면 되는데


1. Generic H2(Server) -> Generic H2(Embedded)로 바꿔주고 Connect(연결)를 누르면 {데이터베이스명} db파일이 자동으로 생성된다.



2. /Users/{사용자명} 디렉토리 내에서 {데이터베이스명}.mv.db을 직접 생성한다.
=> db파일이 생성되면 Generic H2(Server)로 설정을 다시 변경 후 연결을 하면 된다

4. H2 Database Saved Settings 복구방법 (ex h2 generic server 삭제 되었을때)

문제
h2 Database 첫 설치 후 이것저것 만져보다가 h2 generic server 설정을 삭제해버렸는데 재실행을 해도 복구가 안된다?!

해결 방법
.h2.server.properties 파일 설정을 원상 복구 해주면 되는데 맥북에서는 숨김 파일로 존재한다.
/Users/{유저명} 루트 디렉토리로 가서 단축키 Shift + Command +. (마침표)로 숨김 파일을 찾을 수 있다.
.h2.server.properties 파일을 열어 아래의 내용을 그대로 붙여 넣어주면 설정을 되돌릴 수 있다!

#H2 Server Properties
#Fri Jun 22 19:02:35 IST 2018
0=Generic JNDI Data Source|javax.naming.InitialContext|java\:comp/env/jdbc/Test|sa
1=Generic Teradata|com.teradata.jdbc.TeraDriver|jdbc\:teradata\://whomooz/|
10=Generic DB2|com.ibm.db2.jcc.DB2Driver|jdbc\:db2\://localhost/test|
11=Generic Oracle|oracle.jdbc.driver.OracleDriver|jdbc\:oracle\:thin\:@localhost\:1521\:XE|sa
12=Generic MS SQL Server 
2000|com.microsoft.jdbc.sqlserver.SQLServerDriver|jdbc\:microsoft\:sqlserver\://localhost\:1433;DatabaseName\=sqlexpress|sa
13=Generic MS SQL Server 2005|com.microsoft.sqlserver.jdbc.SQLServerDriver|jdbc\:sqlserver\://localhost;DatabaseName\=test|sa
14=Generic PostgreSQL|org.postgresql.Driver|jdbc\:postgresql\:test|
15=Generic MySQL|com.mysql.jdbc.Driver|jdbc\:mysql\://localhost\:3306/test|
16=Generic HSQLDB|org.hsqldb.jdbcDriver|jdbc\:hsqldb\:test;hsqldb.default_table_type\=cached|sa
17=Generic Derby (Server)|org.apache.derby.jdbc.ClientDriver|jdbc\:derby\://localhost\:1527/test;create\=true|sa
18=Generic Derby (Embedded)|org.apache.derby.jdbc.EmbeddedDriver|jdbc\:derby\:test;create\=true|sa
19=Generic H2 (Server)|org.h2.Driver|jdbc\:h2\:tcp\://localhost/~/test|sa
2=Generic Snowflake|com.snowflake.client.jdbc.SnowflakeDriver|jdbc\:snowflake\://accountName.snowflakecomputing.com|
20=Generic H2 (Embedded)|org.h2.Driver|jdbc\:h2\:~/test|sa        
3=Generic Redshift|com.amazon.redshift.jdbc42.Driver|jdbc\:redshift\://endpoint\:5439/database|
4=Generic Impala|org.cloudera.impala.jdbc41.Driver|jdbc\:impala\://clustername\:21050/default|
5=Generic Hive 2|org.apache.hive.jdbc.HiveDriver|jdbc\:hive2\://clustername\:10000/default|
6=Generic Hive|org.apache.hadoop.hive.jdbc.HiveDriver|jdbc\:hive\://clustername\:10000/default|
7=Generic Azure SQL|com.microsoft.sqlserver.jdbc.SQLServerDriver|jdbc\:sqlserver\://name.database.windows.net\:1433|
8=Generic Firebird Server|org.firebirdsql.jdbc.FBDriver|jdbc\:firebirdsql\:localhost\:c\:/temp/firebird/test|sysdba
9=Generic SQLite|org.sqlite.JDBC|jdbc\:sqlite\:test|sa
webAllowOthers=false
webPort=8082
webSSL=false
profile
개발 기록 끄적끄적✏️ #백엔드개발자

0개의 댓글