CentOS 7에서 MariaDB 사용 기초 정리
CentOS 7에서 MariaDB를 다루는 레거시 랩 가이드입니다. CentOS 7 EOL 주의, mariadb-server 설치, mysql_secure_installation, DB/user 생성, SQL 기초와 백업을 정리했습니다.
CentOS 7은 2024년 6월 30일 EOL이 지났습니다. 따라서 새 MariaDB 서버를 CentOS 7에 구축하는 것은 권장하지 않습니다. 기존 레거시 서버를 점검하거나 폐쇄 랩에서 MariaDB 기초를 실습하는 용도로 정리합니다. 운영 환경은 RHEL/Rocky/Alma/Oracle Linux 8/9 이상 같은 지원 OS로 이전하는 것이 맞습니다.
설치와 시작
sudo yum install -y mariadb-server
sudo systemctl enable --now mariadb
sudo systemctl status mariadb --no-pager
MariaDB 공식 문서는 yum/dnf 설치 시 MariaDB repository 사용을 권장합니다. 다만 CentOS 7은 EOL이므로 실제 운영 버전 선택은 지원 범위를 먼저 확인해야 합니다.
초기 보안 설정
sudo mysql_secure_installation
익명 사용자 제거, test DB 제거, root 원격 로그인 제한 여부를 확인합니다.
DB와 사용자 생성
sudo mysql
CREATE DATABASE appdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'REPLACE_WITH_STRONG_PASSWORD';
GRANT ALL PRIVILEGES ON appdb.* TO 'appuser'@'localhost';
FLUSH PRIVILEGES;
기본 SQL
USE appdb;
CREATE TABLE posts (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(255) NOT NULL,
body TEXT NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO posts (title, body) VALUES ('hello', 'first post');
SELECT id, title, created_at FROM posts;
서비스와 로그
systemctl status mariadb --no-pager
journalctl -u mariadb -n 100 --no-pager
mysqladmin -u root -p status
mysql -e "SHOW VARIABLES LIKE 'version';"
백업
mysqldump --single-transaction --routines --triggers appdb > appdb.sql
mysql appdb_restore < appdb.sql
운영 주의사항
CentOS 7은 더 이상 일반 보안 업데이트를 받지 않으므로 인터넷 노출 DB로 사용하면 위험합니다. 레거시 서버라면 방화벽으로 접근 대역을 제한하고, 백업을 확인한 뒤 지원 OS와 최신 MariaDB로 이전 계획을 세워야 합니다.