728x90
목차
· 개요
· 환경분리 Spring boot dev,prod 파일
· 결론
개요
인턴 프로젝트를 진행하면서 Staging 별 Spring서버가 분리되면서 DB도 분리해야 했다.
각각 DB가 다 다르게 담겨야하는데 어떻게할지 찾아보다 간단해서 바로 블로그로 옮기게 됐습니다
환경분리 Spring boot dev,prod 파일
방법 1
Docker Mysql dev , Prod 각각 띄우기
spring:
profiles:
active: dev
include: test
datasource:
url: jdbc:mysql://dev-mysql:3306/testdb?characterEncoding=UTF-8
username: root
password: password
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
ddl-auto: create
spring:
profiles:
active: prod
include: test
datasource:
url: jdbc:mysql://mysql-prod:3306/testdb?characterEncoding=UTF-8
username: root
password: password
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
ddl-auto: create
방법 2
Docker DB명만 바꾸기
spring:
profiles:
active: dev
include: test
datasource:
url: jdbc:mysql://containername:3306/testdb-dev?characterEncoding=UTF-8
username: root
password: password
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
ddl-auto: create
spring:
profiles:
active: prod
include: test
datasource:
url: jdbc:mysql://containername:3306/testdb-prod?characterEncoding=UTF-8
username: root
password: password
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
ddl-auto: create
결론
if(인스턴스 메모리가 넉넉하다 ){
클라우드 네이트브 환경에서 인스턴스의 메모리가 넉넉하다면 Container2개 띄워서 사용하면 될 것 같다.
}else{
DB명만 다르게해서 매핑시켜 사용
}
728x90
'database' 카테고리의 다른 글
Statement보다 PreparedStatement를 사용해야하는이유 (0) | 2024.06.06 |
---|---|
mysql index를 타지않는 경우 (0) | 2024.03.17 |
Querydsl 방언 사용하기 (2) | 2024.02.12 |
mysql DB 데이터 백업/복구(export/import) dump뜨는법 (1) | 2024.01.06 |
MYSQL 조회시 FLOW (0) | 2023.04.11 |