항상 MySQL workbench만 사용하다가 한번 워크벤치 설정을 잘못하는 바람에 모든 권한에 막아져버렸다...ㅎ
docker에 mariadb를 사용해서 연동하게 된 계기랄까. 결과적으로 이제 MySQL보다 mariadb 가 훨씬 편해졌다
프로젝트 설정 시에 데이터베이스 구축할 때 mariadb 데이터베이스 설정하는 방법에 대한 포스트이다.
팀원한테 정리 잘했다고 칭찬받음 뿌-듯
✓ [조건] docker는 설치가 되어 있어야 합니다!
1. cmd or terminal에서 최신버전 mariadb 설치
docker pull mariadb:latest
2. 도커 이미지 확인 → 아래 노란색 네모와 같이 나타나면 성공!
docker search images
3. 도커 컨테이너 생성 및 실행
우리 팀은 mysql이 대부분 깔려있어서 MySQL 기본포트인 3306에 포트 충돌이 나버려서 3307로 설정해서 썼다.
docker run -p 3307:3306 --name mariadb -e MARIADB_ROOT_PASSWORD=root -d mariadb
4. cmd 또는 terminal에서 mariadb 데이터베이스 생성
(1) cmd 창에서 아래 명령어 입력 → 현재 container_name에는 mariadb 써도 된다. container id를 적어도 됨.
docker exec -it [container_name] bash
(2) 해당 컨테이너를 싱행시키기 위한 Mysql 비밀번호 입력
mysql -u root -p
root로 설치를 해 놓았으니 root를 입력하면 된다.
(3) 데이터베이서 생성 및 선택
create database [데이터베이스 이름];
show databases;
use [데이터베이스 이름];
5. Springboot application.yml 설정
오류 여담...
그 혹시 MySQL 워크벤치에 mariadb 가 설치되어 있으면 이 과정을 아무리해도 안 될 것입니다...저 datasource.url이 도커에 있는 mariadb가 아니라 mysql 에 설치된 mariadb경로를 따라서 가버리니 해당 url에는 만들어 놓은 데이터베이스가 없다고 뜹니다..
해결책은! mysql에 있는 mariadb 삭제하셈...
그리고 오늘은 국제 강아지의 날임 🐶
'프로젝트 일지' 카테고리의 다른 글
[🐾 일지] object references an unsaved transient instance - save the transient instance before flushing (0) | 2023.02.01 |
---|---|
[🐾일지: JPA ] JPA date 에 default now() 넣기 (0) | 2023.02.01 |
[🐾 일지] 리액트 스크롤 달력 만들기 (3) | 2022.06.27 |
[🐾 일지]띠용 Textarea와 한 바보의 이야기 (0) | 2022.06.09 |
[🐾 일지] 리액트 달력 만들기 (12) | 2022.06.01 |