[스프링 배치] Spring Batch + mysql 설정하기
- Coding/Spring Batch
- 2021. 10. 9.
반응형
728x90
반응형
SpringBatch DB
개인 공부 프로젝트용으로 springBoot의 내장되어있는 h2 DB를 사용하면 편하겠지만, 스프링 배치 프로젝트 특성상 데이터가 영구적으로 쌓일 수 있는 Oracle, Mysql 등을 사용해야한다.
아래 포스팅을 참고하여 Docker 의 Mysql 을 설치하자.
https://devfunny.tistory.com/421
스프링배치 schema-mysql.sql
application-mysql.yml 파일을 생성하자.
- application-mysql.yml
spring: # zone mysql 설정 (Active profiles)
batch:
jdbc:
initialize-schema: never
datasource:
hikari:
jdbc-url: jdbc:mysql://127.0.0.1:3306/springbatch?characeterEncoding=UTF-8&serverTimezone=UTC
driver-class-name: com.mysql.cj.jdbc.Driver
username: springbatch
password: springbatch
해당 부분은 never 로 설정한 이유가 있다. 스프링 배치의 경우 메타데이터 테이블이 자동적으로 생성되는데, never 로 설정하여 생성을 막는다. 우리는 우리의 별도 로컬 mysql 을 사용할 예정이므로 해당 mysql 에 직접 테이블을 생성할 예정이다.
spring: # zone mysql 설정 (Active profiles)
batch:
jdbc:
initialize-schema: never
~project경로/spring-batch-core/4.3.3/spring-batch-core-4.3.3.jar!/org/springframework/batch/core/schema-mysql.sql
해당 파일의 CREATE TABLE 쿼리가 존재한다. 이 쿼리를 그대로 복사하여 mysql 에 실행하자.
실행
Active profiles 에 mysql 을 적고 어플리케이션을 실행하자.
반응형
'Coding > Spring Batch' 카테고리의 다른 글
SpringBatch 에서 StepExecution 알아보기 (0) | 2022.01.16 |
---|---|
SpringBatch 에서 JobInstance, JobExecution 의 관계 (0) | 2022.01.14 |
[스프링 배치] 두가지 포맷의 파일을 각 포맷(접두어)에 따라 처리하기 (PatternMatchingCompositeLineMapper , LineTokenizer, FieldSetMapper (0) | 2021.10.08 |
[스프링 배치] resources/ 경로의 파일 읽어와 여러 방법으로 필드 매핑하기 (FieldSetMapper, LineTokenizer) (0) | 2021.10.01 |
[스프링 배치] 잡의 재시작 방지/재시작 횟수제한/재실행 설정 방법 (0) | 2021.09.25 |