Database/RDBMS

Maria DB cent os home 경로에 설치하기

기은P 2021. 8. 9. 17:02
반응형

현재 /home/database/mariadb 라는 절대 경로에 mariadb 10.3을 설치를 한다는 것을 배경으로 정리한다.

만약 yum 패키지를 이용해 mariadb를 설치했다면 아래 명령어를 따라 관련된 파일을 전부 삭제해준다.

yum remove mariadb* mariadb-server
rm -rf /etc/my.cnf
rm -rf /var/log/mysql
rm -rf /var/lib/mysql
 
해당 경로로 들어가서 mariadb, mysql과 비슷한 느낌의 파일이 있다면 전부 삭제해준다.

 

 

 

1. maria db tar gz 다운 받기

wget -O mariadb.tar.gz https://downloads.mariadb.com/MariaDB/mariadb-10.3.30/bintar-linux-systemd-x86_64/mariadb-10.3.30-linux-systemd-x86_64.tar.gz

 

-O 옵션을 쓰지 않으면 .index 파일로 받아지기 때문에 -O mariadb.tar.gz를 입력해준다.

 

 

 

 

2. 압축 풀기

tar -zxvf mariadb-10.3.30-linux-systemd-x86_64.tar.gz[파일이름]

압축을 풀면 파일이름과 동일한 폴더가 생성이 되는데, mv 커맨드를 사용해서 적당한 이름의 폴더로 옮겨준다. 마리아db니까 mariadb라는 이름의 폴더를 만드는게 편하다.

 

 

 

3. 심볼릭 링크 생성

ln -s mariadb mysql

접근성을 위해 심볼릭 링크를 생성한다.

 

 

4. 환경변수 등록

sudo nano /etc/profile

맨 아래에 아래 내용을 추가해준다.

export MARIADB_HOME=/home/database/mariadb
export PATH=$PATH:$MARIADB_HOME/bin:.

 

 

 

5. 변경된 환경변수 등록

source /etc/profile

 

 

 

 

6. my.cnf 생성 혹은 수정

nano /etc/my.cnf

내용은 아래와 같이 입력해준다.

[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_bin
 
# 쌍따음표 사용
sql_mode="ANSI_QUOTES,ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
 
# 대소문자 구분
lower_case_table_names=1
 
# commit read option
autocommit=0
 
# 데이터 저장경로
basedir=/home/database/mariadb
datadir=/home/database/mariadb/data
 
# 포트 변경
port = 3306

 

 

 

7. 데이터베이스 폴더 권한 주기

groupadd mysql

useradd -g mysql mysql

chown -R mysql:mysql mariadb

mysql 계정을 만들어서 주는 방법도 있고, 다른 계정을 만들어도 무관하다.

ls -l 또는 ll로 확인하기

 

해당 데이터베이스 폴더에 root 계정이 아닌 다른 사용자 계정으로 권한이 변경되었다면 됐다.

 

 

 

 

7. mysql_install_db 실행

$MARIADB_HOME/scripts/mysql_install_db --defaults-file=/etc/my.cnf --user=mysql

/etc/my.cnf를 기준으로 mysql이 설치가 됩니다. 계정을 user가 아닌 다른 계정으로 변경했다면 다른 계정으로 변경해서 입력하면 된다.

 

 

 

 

8. 자동적으로 mariadb가 실행될 수 있도록 수정

cp -rfp $MARIADB_HOME/support-script/mysql.server /etc/init.d/mariadb

chkconfig –add mariadb

chkconfig –level 2345 mariadb on

-> 위 명령어가 작동하지 않을 경우, cp $MARIADB_HOME/support-files/mysql.server /etc/init.d/mysql 으로 입력하고, chkconfig mysql을 입력한다.

 

 

 

 

 

9. 서버 실행/정지

service mariadb start

service mariadb stop

* 8번에 mysql이라는 이름을 사용할 경우 service mysql start/stop 을 사용해준다.

 

 

 

10. root 비밀번호 설정

서버가 시작이 되었다면 아래 명령어로 루트 계정을 수정/실행해본다. [] 괄호는 빼도 됨.

mysqladmin -u root password [설정할 비번]

mysql -uroot -p[설정한 비번]

 

 

반응형