이 글에서는 간단하게 스프링 부트에서 mysql과 연동하는 방식을 봐보겠다.
mysql은
https://dev.mysql.com/downloads/workbench/
MySQL :: Download MySQL Workbench
Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Red Hat Enterprise Linux / Oracle Linux Fedora macOS Source Code Select OS Version: All Windows (x86, 64-bit) Recommended Download: Other Downloads: Windows (x86, 64-bit), M
dev.mysql.com
에서 다운로드할 수 있다.
자세한 설치방법 및 커넥션 방법은 아래를 참고하길 바란다.
https://shinysblog.tistory.com/20
MySQL(workbench) 다운로드 및 설치 방법
MySQL 다운로드와 workbench를 설치하는 방법을 알려드리겠습니다. dev.mysql.com/downloads/windows/installer/8.0.html MySQL :: Download MySQL Installer Select Operating System: Select Operating System…..
shinysblog.tistory.com
커넥션을 만들때는 아래와 같은 형식이 주어진다.
Hostname과 Port는 특별한 경우가 아니면 위와 같이 주어진다.
커넥션 이름을 설정하고 Test Connection을 클릭하여 설치할 때 생성한 비밀번호로 연결을 하면
와 같이 나오며 MySQL에 접속할 수 있게 된다.
접속하면
-- 유저이름@아이피주소
create user 'test'@'%' identified by 'test2';
-- ON DB이름.테이블명
-- TO 유저이름@아이피주소
GRANT ALL PRIVILEGES ON *.* TO 'test'@'%';
CREATE DATABASE testDB CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
use testDB;
와 같이 입력하여 사용자를 추가하고 권한을 주고 새로운 데이터베이스를 생성할 수 있다.
이제 스프링 부트 프로젝트로 가서 아래와 같이 의존성을 추가해준다.(gradle로 진행함)
dependencies {
implementation 'mysql:mysql-connector-java'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
}
그리고 yml(혹은 properties)에 아래와 같이 추가해준다.
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/testDB?serverTimezone=Asia/Seoul
username: test
password: test2
jpa:
hibernate:
ddl-auto: update
properties:
hibernate:
format_sql: true
show-sql: true
ddl-auto 부분은
- create : 기존 테이블을 삭제하고 새로 생성 [ DROP + CREATE ]
- create-drop : CREATE 속성에 추가로 애플리케이션을 종료할 때 생성한 DDL을 제거 [ DROP + CREATE + DROP ]
- update : DB 테이블과 엔티티 매핑 정보를 비교해서 변경 사항만 수정 [ 테이블이 없을 경우 CREATE ]
- validate : DB 테이블과 엔티티 매핑 정보를 비교해서 차이가 있으면 경고를 남기고 애플리케이션을 실행하지 않음
- none : 자동 생성 기능을 사용하지 않음
로 설정할 수 있다.
url은 일반적으로 비슷한 형식이고 중간에 데이터베이스 이름(testDB)만 수정하면 된다.
username과 password는 루트 계정으로 해도 되지만 위에서 생성한 유저를 가지고 하는 것이 좋다.
이후 실행을 하면 잘 실행될 것이다.
참고
https://dev-coco.tistory.com/85
[Spring Boot] MySQL & JPA 연동 및 테스트 (Gradle 프로젝트)
SpringBoot에서 MySQL 그리고 Spring Data JPA를 연동하는 방법에 대해 알아보도록 하겠습니다. 1. 프로젝트에 의존성 추가하기 build.gradle에 의존성을 아래와 같이 추가해줍니다. dependencies { implementatio..
dev-coco.tistory.com
https://getinthere.tistory.com/17?category=884180
스프링부트 with JPA 블로그 3강 - MySQL 한글 설정 및 연결
1. MySQL 한글 설정 my.ini 파일 MySQL 재시작 [client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] collation-server = utf8_unicode_ci init-connect='SET NAMES utf8' init_conn..
getinthere.tistory.com
'JPA' 카테고리의 다른 글
JPA 양방향 연관관계 일 때의 저장 및 연관관계 편의 메서드 (0) | 2021.12.14 |
---|---|
JPA column에 list를 넣는 방법(String 변환, @ElementCollection) (0) | 2021.12.11 |
JPA - 읽기 전용으로 데이터를 조회하여 성능 향상(메모리, 속도) (0) | 2021.09.18 |
JPA 2차 캐시 기본 개념 (0) | 2021.09.13 |
JPA - 트랜잭션과 락 (0) | 2021.09.02 |