๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๊ฐœ์ธ ๊ณต๋ถ€/WEB-Spring,SpringBoot

์Šคํ”„๋ง๋ถ€ํŠธ h2 database, h2 console ์„ค์ •

by syLim___ 2025. 3. 6.
728x90

โœ… ์Šคํ”„๋ง๋ถ€ํŠธ์—์„œ h2 database๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

pom.xml์— h2 ์˜์กด์„ฑ์„ ์ถ”๊ฐ€ํ•˜๊ณ , 

application.properties์— ๊ด€๋ จ ์„ค์ •์„ ์ถ”๊ฐ€ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 


 

๐Ÿ“Œ h2 database ์‹คํ–‰์„ ์œ„ํ•œ ์ตœ์†Œ ์„ค์ •


pom.xml

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
</dependency>
 

application.properties

# h2 ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ชจ๋“œ (mem) ๋กœ ์‹คํ–‰ํ•˜๋Š” ์„ค์ •. ์ด๋•Œ db์ด๋ฆ„์€ testdb๋กœ ์ƒ์„ฑ๋œ๋‹ค.
spring.datasource.url=jdbc:h2:mem:testdb

# ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ • (๋””ํดํŠธ username: sa, ๋””ํดํŠธ password: ์—†์Œ) 
spring.datasource.username=sa
spring.datasource.password=

# h2 ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์›น ์ฝ˜์†” ํ™œ์„ฑํ™”
# ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด, ๋ธŒ๋ผ์šฐ์ €์—์„œ localhost:8080/h2-console ๋กœ ์ ‘์† ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
spring.h2.console.enabled=true

 

 

๐Ÿ“Œ ๊ฐ ์„ค์ •์— ๋Œ€ํ•ด ์ข€ ๋” ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ

 

spring.datasource.url ์†์„ฑ ( ๊ณต์‹๋ฌธ์„œ ์ฐธ๊ณ )

 
- h2 db์˜ ๊ฒฝ์šฐ, `jdbc:h2:{์‹คํ–‰๋ชจ๋“œ}:{๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„}` ํ˜•์‹์œผ๋กœ ์ž‘์„ฑํ•ด์•ผ ํ•œ๋‹ค.

- h2 db ์‹คํ–‰ ๋ชจ๋“œ์—๋Š” embedded๋ชจ๋“œ, in-memory ๋ชจ๋“œ, server ๋ชจ๋“œ๊ฐ€ ์žˆ๋‹ค.


1๏ธโƒฃ Embedded ๋ชจ๋“œ

spring.datasource.url=jdbc:h2:{๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฒฝ๋กœ์™€ ์ด๋ฆ„}
# ์˜ˆ์‹œ: jdbc:h2:~/testdb

- ํŒŒ์ผ ๊ธฐ๋ฐ˜์ด๋‹ค.

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋กœ์ปฌ์— ํŒŒ์ผ(testdb.mv.db)๋กœ ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์—, 

    ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ข…๋ฃŒํ•˜๋ผ๋„ ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ์ง€๋œ๋‹ค.


2๏ธโƒฃ In-Memory ๋ชจ๋“œ

spring.datasource.url=jdbc:h2:mem:{๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„}
# ์˜ˆ์‹œ: jdbc:h2:mem:testdb
- ์ง€์ •ํ•œ ์ด๋ฆ„์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค.

- ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ข…๋ฃŒ๋˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋„ ์‚ญ์ œ๋œ๋‹ค.


3๏ธโƒฃ Server ๋ชจ๋“œ

spring.datasource.url=jdbc:h2:tcp://{๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„ url}
# ์˜ˆ์‹œ: jdbc:h2:tcp://localhost/~/testdb

- ๋…๋ฆฝ์ ์ธ h2 ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•œ๋‹ค.

 

โœ… ๋ธŒ๋ผ์šฐ์ €์—์„œ h2-console ์ ‘์†ํ•˜๊ธฐ

๋ธŒ๋ผ์šฐ์ €์—์„œ localhost:8080/h2-console ๋กœ ์ ‘์†ํ•˜๊ณ 
application.properties์— ์ •์˜ํ•œ url, username, password๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด
H2 ์›น ์ฝ˜์†”์— ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

 

 


- ์ฐธ๊ณ ๋กœ, application.properties์— ์•„๋ž˜ ์„ค์ •์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์›น ์ฝ˜์†” ์ ‘์† ๊ฒฝ๋กœ๋ฅผ ์ง์ ‘ ์„ค์ •ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.
    (์„ค์ •ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์ ‘์† ๊ฒฝ๋กœ๋Š” ๋””ํดํŠธ๋กœ /h2-console์ด ๋จ)

spring.h2.console.path=/asdf
# ์ด๋ ‡๊ฒŒ ์„ค์ •ํ•˜๋ฉด, ๋ธŒ๋ผ์šฐ์ €์—์„œ http://localhost:8080/asdf ๊ฒฝ๋กœ๋กœ ์›น ์ฝ˜์†”์— ์ ‘์† ๊ฐ€๋Šฅ
 
728x90