본문 바로가기

개발/프로젝트

[스프링부트 게시판] 2. MySQL 설정

이번 게시한 글에서는 MySQL DataBase를 사용하기 위해 MySQL 환경설정 및 연결을 진행하겠습니다.

 

1. MySQL 프로젝트 생성

 

MySQL WorkBench에서 SCHEMAS에서 오른쪽 클릭 후 Create Schema 를 클릭합니다.

 

 

new_schema 라는 스키마 생성 창이 나타나게 되는데 Name에 본인이 원하는 프로젝트명을 입력합니다. 필자는 toyproject라고 하겠습니다.

스키마 생성 창

이 때 Charset을 설정하는 값이 있는데 따로 MySQL의 my.ini를 수정하지 않았다면 기본으로 주어진 Default Charsetutf8mb4 로 설정되어 있습니다. 혹여나 문제가 있을까봐 따로 utf8을 클릭 후 Apply를 설정하겠습니다.

Charset 설정

이 후 해당 데이터 베이스에 스키마를 생성하는 허가받는 창이 나타나는데 이 때 따로 설정할 거 없이 Apply를 눌러주면 됩니다.

 

이후 필자는 MySQL WorkBench보다 DBeaver라는 SQL 클라이언트이자 데이터베이스 관리 도구에 익숙해져 있어서 이에 대한 설명으로 진행하겠습니다.

 

DBeaver를 사용하고 싶으시다면 아래에 있는 해당 링크를 통해 다운로드하여 사용하시면 됩니다.

 

https://dbeaver.io/download/

 

Download | DBeaver Community

Download Tested and verified for MS Windows, Linux and Mac OS X. Install: Windows installer – run installer executable. It will automatically upgrade version (if needed). MacOS DMG – just run it and drag-n-drop DBeaver into Applications. Debian package

dbeaver.io

 

 WorkBench를 통해 toyproject라는 스키마를 생성을 시켰으며 이에 대한 스키마 정보를 DBeaver에 연결시킬 것입니다. 현재 ID는 root로 생성하였으며 따로 프로젝트를 연결할 USER를 생성할 예정입니다.

 

해당 데이터를 연결하기 위한 DBMS, 사용하는 SQL문법이 어떤 것인지 확인해야합니다. 저는 MySQL로 진행하고 있으므로 MySQL을 클릭 후 다음 설정 창이 나타나게 됩니다.

 

 

MySQL뿐만이 아닌 다른 DBMS들을 갖고와 사용할 수 있습니다.

Database에 해당하는 프로젝트 명, 현재 연결하려는 프로젝트인 toyproject를 집어넣고 Username에는 root, 비밀번호는 MySQL에서 처음 설정한 비밀번호를 입력합니다. 왼쪽 밑에 Test Connection ... 으로 연결이 되는지 확인을 하고 완료 버튼을 누릅니다.

DBeaver를 통한 toyproject 프로젝트 연결

 

이전에 사용하던 project까지 갖고오고 있기 때문에 나중에 따로 정리!

 

프로젝트에 연결하기 전, Spring Boot의 pom.xml 파일에서 주석으로 처리했던 mysql connector 부분을 다시 활성화 시켜줍니다.

2. MySQL 프로젝트 연결

 

이번에는 MySQL을 프로젝트에 연결해보겠습니다.

 

우리가 생성한 SpringBoot Project에 있는 'src/main/resources' 폴더를 열어보면 'application.properties'라는 파일을 찾을 수 있습니다.

 

반복되는 코드가 있어 yml을 사용하는 경우가 있으나 properties에 대해 알기 위해 이대로 진행하겠습니다.

 

spring.datasource.url=jdbc:mysql://localhost:3306/toyproject?autoReconnect=true
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.data-username=[해당 데이터베이스 아이디]
spring.datasource.data-password=[해당 데이터베이스 비밀번호]

 

위에 과정을 수행 후, 테스트 컨트롤러를 작성하고 프로젝트를 실행하면 정상적으로 작동하는 것을 확인할 수 있습니다.

 

TestController
결과