본문 바로가기
DB/MariaDB

DB) MariaDB 10.X Binary 설치

by LILO 2021. 6. 27.
반응형

MariaDB를 Binary로 설치한 이유

1) RPM으로 설치시 엔진 사용자가 원하는 위치로 설치 불가

2) 소스 설치시 다소 오래 걸림

3) 바이너리 설치가 간편하고 빠르게 설치할 수 있음

 

 

 

MariaDB 10.X Binary Installation

 

설치 사이트

 

https://downloads.mariadb.org/

 

Downloads - MariaDB

 

downloads.mariadb.org

설치는 공식 홈페이지에서 받아야 바이러스 위협 요소로 부터 안전함

 

 

 

☞ DB 유저 생성

 

DB 유저는 Oracle 경우는 "oracle", MySQL "mysql", MariaDB "maria", "mysql" 가져가는 규칙이 대부분임

# groupadd mysql
# useradd -g -u <UID> mysql mysql

 

 

압축 해제 이름 변경

 

설치시 편의를 위해 이름을 변경합니다.

# tar xvzf mariadb-10.5.15-linux-x86_64.tar.gz ; mv mariadb-10.5.15-linux-x86_64 mariadb

 

 

 

엔진 디렉토리 지정 복사

 

설치 가이드는 "/app" "/data" , 엔진과 데이터가 쌓이는 영역을 분리하였습니다.

# mkdir /app
# cp -a /root/mariadb  /app/mariadb
# mkdir -pv /app/mariadb/temp
# chown -R mysql:mysql /app/mariadb

 

 

 

데이터 디렉토리 생성 권한 부여

 

실질적으로 데이터가 쌓일 공간을 생성합니다.

"/data" 같이 데이터 디렉토리를 별도로 지정합니다.

# mkdir /data
# chown -R mysql:mysql /data

 

 

 

MariaDB 설정 파일 작성

 

주의해야 점은 DATADIR BASEDIR 위치 지정과 PORT 부분입니다.

스토리지 엔진 튜닝은 Real MySQL 서적 및 MariaDB Documents, 구글링 등을 참고하여 자신의 시스템에 맞는 권고값을 맞춰주는 것이 좋습니다.

# vi /etc/my.cnf

[client]
default-character-set = utf8
port            = 3306
socket          = /data/mariadb.sock 
 

[mysqld]
user      = mysql
port            = 3306
tmpdir          = /app/mariadb/temp
socket          = /data/mariadb.sock
basedir         = /app/mariadb
datadir         = /data
pid-file        = /data/mariadb.pid
default-character-set = utf8

skip-name-resolve
 
# log
log-error = /var/log/mariadb/mariadb.err
slow_query_log_file = /var/log/mariadb/mariadb-slow-query.log

 

 

에러 로그 설정

# mkdir -pv /var/log/mariadb
# chown -R mysql. /var/log/mariadb

 

 

MariaDB 엔진 설치

 

재설치시 귀찮기도 하고 다른서버에서도 간편하게 설치할 수 있을것 같아서  설치 스크립트를 작성하였습니다.

# vi mariadb_install.sh

#!/bin/sh
basedir=/app/mariadb
datadir=/data
port=3306
user=mysql
socket=mariadb.sock

cd $basedir/scripts
./scripts/mysql_install_db   --socket=$datadir/$socket  --port=$port  --basedir=$basedir --datadir=$datadir --user=$user
#  sh install.sh

 

 

 

MariaDB 엔진 설치 확인

 

에러 로그가 없는지 확인합니다.

# vi /var/log/mariadb/mariadb01.err

 

 

MariaDB 안전모드로 실행 프로세스 백그라운드 job 확인합니다.

# /app/mariadb/bin/mysqld --user=mysql &
# jobs
# ps -ef |grep mysql

 

 

MariaDB 진입합니다.

#  /app/mariadb/bin/mysql -u root

 

 

 MariaDB 자동 실행 등록 (서비스 등록)

# cp -a  /app/mariadb/support-files/mysql.server  /etc/init.d/mysqld
# chkconfig mysqld on
or
# systemctl enable mysqld

 

 MariaDB 서비스 시작

# /etc/init.d/mysqld start
or
# systemctl start mysqld
반응형