;

Raspberry Pi(라즈베리 파이) Ubuntu Docker MySQL-Server 설치하기 본문

Linux

Raspberry Pi(라즈베리 파이) Ubuntu Docker MySQL-Server 설치하기

WindowsHyun 2021. 4. 19. 00:29
반응형

Docker Hub 에 나온 공식 Mysql-Server 이미지

1. Docker 명령어 입력하여 mysql-server 설치하기

명령어 : docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password --name mysql-server -v /exthdd/dockerData/mysql:/var/lib/mysql mysql/mysql-server:latest --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
-p 3306:3306
    -> 포트번호

-e MYSQL_ROOT_PASSWORD
    -> Mysql root 비밀번호 ( 적어도 적용이 안됩니다... )

--name mysql-server
    -> Docker에 표시되는 이름

-v /exthdd/dockerData/mysql:/var/lib/mysql
    -> mysql 데이터를 저장할 위치입니다. ( 빨간색 )

mysql/mysql-server:latest
    -> mysql docker 최신 버전 입니다.

--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    -> DB에서 한국어 저장이 안되는 것을 방지하기 위한 character Set 입니다.

 

2. Docker 실행 이후 docker 상태 확인하기

명령어 : docker ps -a

d067cfe7a013 mysql/mysql-server:latest "/entrypoint.sh --ch..." 23 hours ago Up 19 hours (healthy)    0.0.0.0:3306->3306/tcp, 33060-33061/tcp

위와 같이 정상적으로 Docker에 프로세스가 떠 있고, (healthy) 상태이면 문제가 없습니다.
Docker mysql-server를 처음 실행시 약 2~3분 정도 시간이 걸릴 수 있습니다.

 

3. Docker로 mysql-server 컨테이너 접속하기

명령어 : docker exec -it mysql-server /bin/bash
    ->빨간색 글짜는 상단 Docker 실행시 name을 적어주시면 됩니다.

 

4. mysql-server 컨테이너에서 Mysql 접속하기

명령어 : mysql -uroot -p

처음 접속의 경우 비밀번호가 없는 상태이므로, Enter를 클릭하여 넘겨주시면 자동으로 접속이 됩니다.
만약 위와 같은 화면이 나오지 않을 경우, 상단에 Docker Run시 사용했던 "MYSQL_ROOT_PASSWORD" 비밀번호를 입력해보시기 바랍니다.

 

5. Mysql Root 비밀번호 설정 하기

명령어 : use mysql;


명령어 : select host, user, authentication_string from user;

처음 입력시 localhost | root 오른쪽에 값이 비어 있습니다.

명령어 : alter user 'root'@'localhost' identified with mysql_native_password by '변경할 비밀번호';


비밀번호가 변경이 완료되었습니다.

 

6. root 계정 외부접속 허용 하기

명령어 : CREATE USER 'root'@'%' IDENTIFIED BY '변경할 비밀번호';
명령어 : GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

위와 같이 입력하면 외부에서 root 접속이 가능해 집니다.

 

7. Docker에서 MySQL sql 백업 방법

명령어 : sudo docker exec mysql-server /usr/bin/mysqldump -u root --password=password db이름 > /home/ubuntu/backup.sql

빨간색 글자의 경우 첫번째 부터 "Docker 이름, 사용중인 DB 이름" 입니다.
위 명령어 입력시 정상적으로 SQL 백업이 진행이 됩니다.
반응형
Comments