본문 바로가기

IT/NAS

[자작NAS] 6. 우분투 서버에 MariaDB 설치

반응형

Docker 설치가 완료되면 다양한 기능을 Docker를 통해 추가할 수 있습니다.

먼저 데이터베이스인 MariaDB를 설치하는 방법을 알아보겠습니다.

MariaDB는 기존 MySQL이 오라클의 소유로 넘어가면서 새롭게 생긴 DB입니다.

MySQL과 호환이 되기 때문에 MySQL을 대체해서 사용할 수 있습니다.

MariaDB를 설치하는 이유는 Nextcloud나 Guacamole 등을 위해 사용되기 때문입니다.

Docker를 통해 MariaDB를 설치하는 방법을 알아보도록 하겠습니다.

 

1. Docker로 MariaDB 컨테이너 생성

Docker의 search 명령어나 hub.docker.com을 통해 이미지를 검색할 수 있습니다.

sudo docker search mariadb

MariaDB는 Docker에 공식 이미지가 등록되어 있습니다.

먼저 데이터를 저장할 디렉토리를 생성합니다.

sudo mkdir -p /data/mariadb/data

run 명령어로 간단하게 컨테이너 생성이 가능합니다.

sudo docker run -d \
-p 3306:3306 \
--name=mariadb \
--restart=unless-stopped \
-v /data/mariadb/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD='my-secret-pw' \
mariadb

명령어의 my-secret-pw 부분에는 실제 사용을 원하는 비밀번호를 입력하면 됩니다.

생성된 컨테이너는 아래 명령어를 통해 확인 가능합니다.

sudo docker ps -a

컨테이너가 정상적으로 동작하면 아래와 같이 표시됩니다.

컨테이너 상태 확인

정상적으로 동작중인 것을 확인할 수 있습니다.

 

2. MariaDB 접속

MariaDB의 내부에 접속하려면 컨테이너 내부의 bash를 실행해야 합니다.

sudo docker exec -it mariadb bash

 

만약 컨테이너 이름(--name=컨테이너명)을 다르게 했다면 명령어에서 mariadb를 해당 이름으로 변경하면 됩니다.

일반적인 MySQL 명령어를 사용해서 설정이 가능합니다.

mysql -u root -p

비밀번호는 컨테이너 생성시 MYSQL_ROOT_PASSWORD에 입력했던 값을 사용하면 됩니다.

MariaDB 연결

정상적으로 연결되면 위와 같이 표시가 됩니다.

확인을 완료하고 quit 명령어로 나갈 수 있습니다.

 

3. root 계정 비밀번호 변경

보안을 위해 root 계정의 비밀번호를 주기적으로 변경해주는 것이 좋습니다.

컨테이너 내부로 이동해서 다시 아래 명령어를 입력합니다.

mysql -u root -p

그리고 차례로 아래 명령어를 입력해주면 비밀번호가 변경됩니다.

use mysql;
UPDATE user SET password=PASSWORD('new_password') WHERE User='root';
FLUSH PRIVILEGES;
quit;

실제 사용할 비밀번호를 new_password 부분에 입력하면 됩니다.

이것으로 MariaDB의 설치가 완료됩니다.

반응형