-
스프링 부트 MySQL8 연동 IntellijSpring/Spring Boot 2020. 6. 23. 03:01
1. MySQL 커넥터 의존성을 추가한다.
- MySQL에 접속할 수 있는 커넥터 의존성을 추가해야 한다.
- datasource에 구현체이다.
12345<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency>cs 12implementation 'org.springframework.boot:spring-boot-starter-data-jpa'compile 'mysql:mysql-connector-java'cs Gradle 기반
2. application.properties 설정 파일에 다음과 같이 DataSource를 설정해준다.
12345spring.datasource.url=jdbc:mysql://localhost:3306/example?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Seoulspring.datasource.username=tempspring.datasource.password=passspring.datasource.driver-class-name=com.mysql.cj.jdbc.Drivercs 3. Spring Data JPA를 사용한다면 다음의 설정을 추가하자.
12345# MySQL 을 사용할 것.spring.jpa.database=mysql# MySQL 상세 지정spring.jpa.database-platform=org.hibernate.dialect.MySQL8Dialectcs 4. MYSQL에 유저 권한 설정을 해주자.
이때 database 이름을 example로 하고 user에 이름을 'temp' 패스워드를 pass로 해보자
1) mysql> CREATE USER 'temp'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pass';
2) mysql> GRANT ALL PRIVILEGES ON example.* TO'temp'@'localhost';
3) mysql> create database example
( 자세한 정보 : https://stackoverflow.com/questions/50177216/how-to-grant-all-privileges-to-root-user-in-mysql-8-0 )
5. Intellij 의 얼티밋을 쓴다면
6. 만약 set timeZone 에러가 뜬다면?
https://dev.mysql.com/downloads/timezones.html
timezone_2020a_leaps.sql.zip을 받는다. (Window 기준)
다음과 같이 경로에 있는 leaps.sql을 source로 실행한다.
정상적으로 실행이 됬다면 이제 setTimeZone이 Asia/Seoul로 나오게 된다.
이제 정상적으로 Connection 되는 것을 알 수 있다.
다음과 같은 방법으로도 간단히 가능하다 )
'Spring > Spring Boot' 카테고리의 다른 글
RestTemplate, WebClient (0) 2020.07.13 JSR-303 Errors들을 Json으로 Serialization 해보자 (0) 2020.06.25 application.properties 등의 외부 설정 (0) 2020.06.13 내장 서블릿 컨테이너 응용 해보기 (0) 2020.05.14 내장 웹 서버 이해 (0) 2020.05.02