1. DB설치(mysql)
CREATE DATABASE naepyeon default CHARACTER SET utf8mb4;
2. TABLE 생성
create table member (
member_id bigint not null auto_increment,
email varchar(255) not null,
password varchar(255) not null,
username varchar(20) not null,
primary key (member_id)
) engine=InnoDB default charset utf8mb4;
.
.
.
- 테이블은 직접 SQL을 통해 적용한다.
- 실제 배포용 yml의 ddl-auto를 validate로 고정시켰기 때문이다.
3. 설정파일을 적용한다.
- application-deploy.yml
- jar 실행시 해당 설정파일을 사용하도록 추가
nohup java -jar -Dspring.profiles.active=deploy naepyeon-0.0.1-SNAPSHOT.jar 2>&1 &
PID=$(pgrep -f naepyeon) if [ -n $PID ]; then kill -9 $PID sleep 5 fi nohup java -jar -Dspring.profiles.active=deploy naepyeon-0.0.1-SNAPSHOT.jar 2>&1 &
- nohup java -jar -Dspring.profiles.active={프로필 이름} {빌드된 jar 파일 명}.jar 2>&1 &
spring:
h2:
console:
enabled: true
datasource:
url: ${MYSQL_URL}
username: ${MYSQL_USERNAME}
password: ${MYSQL_PASSWORD}
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
ddl-auto: validate
properties:
hibernate:
format_sql: true
default_batch_fetch_size: 1000 #최적화 옵션
dialect: org.hibernate.dialect.MySQL5Dialect
open-in-view: false
logging.level:
org.hibernate.SQL: info
security:
jwt:
token:
secret-key: ${JWT_SECRET_KEY}
expire-length: ${JWT_EXPIRE_LENGTH}
- 환경변수의 키/값이 jar 실행시 적용된다.
4. WAS에서 DB에 접근할 수 있도록 계정을 생성한다.
4-1. DB권한있는 계정추가
create user naepyeon@% identified by naepyeon1!
grant all privileges on naepyeon.* to 'naepyeon'@'%' with grant option;
flush privileges;
4-2. DB기본 127.0.0.1 → 주석처리
아래 파일에서 bind-address = 127.0.0.1 와 mysqlx-bind-address = 127.0.0.1이라고 되어있는 곳을 찾아서 주석처리를 해주거나 0.0.0.0으로 모든 곳에서 접근이 가능하도록 설정한다.
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
'공부 > 프로젝트' 카테고리의 다른 글
Flyway를 사용하는 이유 (0) | 2022.07.29 |
---|---|
젠킨스 pipeline를 설정해보자 (0) | 2022.07.26 |
[지원플랫폼] 플래닝포커를 해보자 (0) | 2022.07.25 |
젠킨스를 적용해보자 (0) | 2022.07.25 |
Swap 메모리를 설정해보자 (0) | 2022.07.25 |
댓글