DB/MariaDB

DB) MariaDB 10.X Binary 설치

LILO 2021. 6. 27. 22:17
반응형

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
반응형