Docker - mariadb 설치

·2021년 5월 30일
0

종종 재설치하는데 매번 찾아보기 귀찮아서 정리하는 글

1. 도커 이미지 다운

docker pull mariadb 
  • 도커 서버에 있는 mariadb 이미지를 다운받는다

2. docker run 설정

 docker run -d -p 3306:3306 -e MARIADB_ROOT_PASSWORD=비밀번호 -v /var/lib/mariadb:/var/lib/mariadb --name mariadb_docker mariadb
  • run : 컨테이너 생성과 실행을 같이 한다
  • -d : 백그라운드에서 실행하는 것
  • -p : 포트번호 설정, docker 에서 돌아가는 3306 포트와 실제 서버의 포트와 매핑을 해준다는 의미. 포트번호를 바꾸고 싶으면 앞의 3306을 변경하면 된다
  • -e : 환경변수 설정, root 계정의 패스워드를 지정해주는 것
  • -v : 도커 컨테이너 안의 var/lib/mariadb 에 저장되는 데이터를 실제 서버 /var/lib/mariadb 에 저장하겠다는 의미.
    컨테이너가 꺼지면 자동적으로 안에있는 데이터가 날아가기 때문에 데이터 유실을 막기 위해 지정해준다.
  • --name : maraidb 이미지 이름을 mariadb_docker 로 변경해준다
docker ps

도커에 실행중인 컨테이너 목록을 확인하면

이렇게 뜨는 것을 확인

3. mariadb 설정

(1) 컨테이너에 접속한다

docker exec -i -t mariadb_docker bash

(2) mariadb에 접속한다

mysql -uroot -p비밀번호
  • mysql 접속
 use mysql

(3) 계정 생성

create user '유저명'@'localhost' identified by '비밀번호'
create user '유저명'@'%' identified by '비밀번호' 
  • 첫번째는 생성할 유저가 localhost에만 접속할 수 있음
  • 두번째는 생성할 유저가 모든 곳에서 접속할 수 있음
SELECT HOST, USER, PASSWORD FROM mysql.user

을 하면 계정생성이 된 것을 확인할 수 있다.

(4) 권한 주기

grant all privileges on *.* to '유저명'@'localhost';
grant all privileges on *.* to '유저명'@'%';
  • *.* : 모든 db, 모든 테이블을 의미한다.
profile
💻📝🤯

0개의 댓글