Intro
안녕하세요.
초보 DBA 다뉴입니다.
오늘은 CentOS7에 MariaDB를 설치하는 내용에 대해 한번 남겨볼까합니다.
실무에서 MariaDB를 사용하고 있는데요.
무료 DB이다보니 각 서비스별로 MariaDB를 세팅하여, 여러 업무에 사용중에 있습니다.
설치하는 과정을 많이 진행해 보기도하고, 여러가지 다른기능과 함께 쓰기도했는데요.
그 중에 딱 MariaDB 설치에 대해서 알아보도록 하죠! 나머지는 다른 포스팅에서 하나하나 다루도록 하겠습니다.
MariaDB 설치
1. Setting
yum을 통해 필요한 패키지들을 설치
yum -y update
yum -y install net-tools
yum -y install epel-release cmake socat rsync
yum -y groupinstall 'Development Tools'
2. repo Download
# repo download
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
# 잘 다운되었는지 확인
ls -lh /etc/yum.repos.d/
/etc/yum.repos.d/ 디렉토리에 mariadb.repo 가 다운되어있는 모습을 확인 할 수 있습니다.
3. MariaDB Install
# MariaDB 서버, 클라이언트 설치
yum install -y mariadb-server mariadb-client
# 설치 확인
yum list installed *Maria*
MariaDB 서버와 클라이언트를 다운받습니다.
yum list installed *Maria* 를 통해 설치 내역을 확인 할 수 있습니다.
필요에 따라 서버 혹은 클라이언트만 받을 수도 있습니다.
# MariaDB 자동실행 설정 및 확인
systemctl enable mariadb
systemctl is-enabled mariadb
# MariaDB Start
systemctl start mariadb
systemctl status mariadb
MariaDB 서비스를 시작합니다.
서비스를 시작하기 전,
OS가 시작 될 때 MariaDB 서비스가 자동으로 올라올 수 있도록 systemctl enable mariadb를 설정합니다.
systemctl is-enabled mariadb 를 통해 자동 시작 상태,
systemctl status mariadb 를 통해 서비스 상태를 확인 할 수 있습니다.
# mysql 명령어를 통해 mysql 접속
mysql
# mysql 에서 나오기
exit;
접속이 잘 되는지 확인해봅니다.
4. MariaDB root 계정 설정
/usr/bin/mysqladmin -u root password '[PW 설정]'
mysqladmin을 통해 root 계정의 초기 비밀번호를 설정합니다.
해당 root 계정의 접속가능 위치는 localhost라서 다른 아이피에서 접속 할 계정도 추가로 만들어 줘야합니다.
mysql
> create user 'root'@'%';
> grant all privileges on *.* to 'root'@'%' identified by '[PW 설정]';
> FLUSH PRIVILEGES;
mysql 로 접속하여, 모든 대역에서 접속 가능한 root를 생성 후 비밀번호를 설정합니다.
계정 정보는 한번 갱신해줘야 반영이 되기에 FLUSH PRIVILEGES를 통해 갱신하여 반영합니다.
원하는 유저 및 권한에 대해서는 각각 필요에 맞게 설정하도록합니다.
5. Data Directory 분리
기본적으로 시스템과 데이터 저장공간이 분리되는 것이 좋습니다.
저는 기본 디렉토리가 아닌 /data 디렉토리를 따로 분리하여 해당 공간을 데이터 공간으로 사용하고 있습니다.
# data directory 복사
rsync -av /var/lib/mysql /data/mariadb/
# 해당 direcory 에 mysql 소유자 권한 부여
chown -R mysql:mysql /data/mariadb/mysql
해당 디렉토리를 복사 후 권한을 부여하였는데요.
mariadb에서 해당 디렉토리의 데이터파일을 읽을 수 있도록 경로를 지정하여 줍니다.
vi /etc/my.cnf.d/server.cnf
> 문서 내용 수정
-----------------------------
[mariadb]
datadir=/data/mariadb/mysql
/etc/my.cnf.d/server.cnf 문서를 통해 디렉토리 경로를 지정합니다.
vi를 통해 파일을 열고 [mariadb] 하위에 datadir경로를 지정하여 줍니다.
6. 방화벽 설정
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports
방화벽을 설정하여줍니다.
MariaDB의 기본 포트는 3306입니다.
7. MariaDB 재시작
systemctl restart mariadb
기본적인 설정을 완료하였으므로,
MariaDB 서비스를 한번 재시작하여 반영되도록 합니다.
이렇게 기본적인 MariaDB 서버, 클라이언트 설치가 완료되었습니다.
Outro
기본적인 MariaDB의 설치에 대해서 알아봤는데요.
기본적인 방향성은 이렇게 가고 자세한 설정은 각 운영 서비스에 맞게 조금씩 수정해나가면 좋을 것 같습니다.
기본적인 설치를 완료하였으니 다음에는 MariaDB의 필요한 자세한 설정들이나,
서버를 운영함에 있어서 필요한 것들을 추가적으로 설치하는 방법들에 대해서 하나씩 진행해 보도록 하겠습니다.
감사합니다!
'DATABASE > MariaDB' 카테고리의 다른 글
[MariaDB][Linux] Galera Cluster 설치 - 이중화 / HA 구성 (1) | 2023.07.26 |
---|---|
[MariaDB] 현재 Process 보는 방법 및 모니터링 팁 (0) | 2023.07.22 |
[MariaDB][Error] Can't lock aria control file 'aria_log_control' for exclusive use, error: 11. (3) | 2023.07.21 |
[MariaDB][Error] ERROR 1005 (HY000) (errno: 184 "Tablespace already exists") (1) | 2023.07.20 |
[MariaDB] mysqldump를 활용한 백업의 모든 것과 복원 (8) | 2023.07.19 |
[MariaDB] SQL 파일 실행 - 대용량 insert 문 (0) | 2023.07.17 |
[DBA][MariaDB] 대용량 데이터 삭제 - 실패 경험과 작업 요령 (2) | 2023.07.12 |
[MariaDB] Binary 설치 - repo 없는 구버전 tar로 설치 (0) | 2023.06.22 |