단의 개발 블로그
MariaDB 설치 및 설정 (Linux) 본문
다운로드
먼저 apt 패키지를 업데이트 한다.
apt update
설치 가능한 mariadb이 있는지 확인한다.
apt list | grep mariadb

만약 설치하려는 mariadb 버전이 없을 경우 공식 홈페이지에서 따로 다운받아 apt를 업데이트 한다. 보통은 해당 우분투 버전에서 사용 가능한 버전이 설치된다. server는 해당 리눅스에 DB 역할을 하는 서버가 설치되며, client는 해당 서버에 접속하기 위해 사용되는 패키지다.
아래 명령어를 이용해서 설치한다.
sudo apt install mariadb-server mariadb-client -y
초기 설정
보안
설치되면 자동으로 mariadb가 실행된다. 이전에 설치한 htop으로 확인하거나 ps -ef | grep maria 명령어로 확인한다. 설치가 완료되면 초기 보안설정을 한다.
sudo mysql_secure_installation
해당 명령어를 입력하면 아래와 같은 설정을 순차적으로 적용시킨다. 만약 root 계정의 패스워드가 설정되지 않았을 경우 설정하는 질문이 먼저 나오는데 알맞게 입력하면 된다.

바인딩
처음 설치할 경우 루프백으로 적용되어 실행된다. 루프백일 경우 서버 내에서만 접속 가능하며 다른 서비스에서의 접근이 불가능하다. 흔히 말하는 localhost(="127.0.0.1")이 루프백이다. 해당 설정을 변경하고 접속 가능한 디비로 변경한다.
아래 명령어를 실행해서 서버 옵션 파일을 연다.
vi /etc/mysql/mariadb.conf.d/50-server.cnf
아래에 보면 bind-address 옵션이 보인다. 해당 옵션을 망 외에서 접근가능하도록 하려면 0.0.0.0으로 설정하고, 내부망일 경우 해당 내부망 네트워크 클래스에 따라 변경해주면 된다. 변경후 옵션을 적용하려면 아래 명령어를 입력한다.
systemctl restart mariadb
데이터베이스 생성 및 계정 추가
root 계정은 서버 내에서 권한이 부여된 사용자만 사용하는 것이 좋다. 만약 탈취당하면 서비스에 어마어마한 영향을 미칠 수 있다. 따라서 권한에 맞게 계정을 추가하여 사용한다. 먼저 mysql 에 접속한다.
mysql -u root -p
접속하면 아래와 같은 도스창이 출력된다.

아래 명령어를 순차적으로 입력한다. []안에 내용은 사용자가 정하는 것이며, 보안에 주의한다.
# 데이터 베이스를 생성
CREATE DATABASE [DB명];
# 사용자 생성 첫번재는 서버내에서, 두번째는 사용자 지정한 아이피만 %는 모든 아이피, 10.% 10번대역 아이피 전부
CREATE USER '[유저명]'@'localhost' IDENTIFIED BY '[비밀번호]';
CREATE USER '[유저명]'@'%' IDENTIFIED BY '[비밀번호]';
# 사용자 권한 부여
# 첫번째는 모든 권한 부여, 두번째는 지정 권한만 부여
GRANT ALL PRIVILEGES ON [데이터베이스명].[테이블명] TO '계정정보';
GRANT SELECT, UPDATE PRIVILEGES ON[데이터베이스명].[테이블명] TO '계정정보';
# 변경된 내용을 즉시 DB에 반영
FLUSH PRIVILEGES;
생성 내용을 확인한다.
# 데이터 베이스 확인
SHOW databases;
# 유저 확인
SELECT user, host FROM mysql.user;
접속테스트
DB에 접속하기 위해선 이전에 생성한 계정 정보로 접속을 요청한다. 명령 프롬프트로 접속할 수도 있지만 보통 UI가 잘 되어 있는 툴을 이용해서 접속한다. mysql workbench, dbeaver, datagrip등 여러 도구가 존재하니 본인의 상황에 맞게 설치하여 사용하면 된다.
ETC
만약 서버 옵션이나, 테이블 설정, 보안 설정 등 세부적인 설정이 필요할 경우 공식 홈페이지를 참고해서 적용시키는 것이 제일 좋다.
공식문서 링크
'Database > Maria' 카테고리의 다른 글
| 서버 설정 정보 확인하기 (0) | 2024.09.02 |
|---|---|
| Maria DB란 (2) | 2024.08.28 |