CentOS 7에 설치되는 MariaDB는 기본 폴더인 /var/lib/mysql에 저장된다.

대부분의 Server는 OS 설치용 저장소와 별개로 데이터저장을 위한 저장소를 추가하는데

이를 위해 MariaDB의 Data 저장 위치를 변경할 필요가 있다.

 

다양한 정보를 참고하여 변경해보았으나 아래 작성되는 내용이 오류가 없이 잘 동작했다.

 

1. MariabDB의 Data 저장 위치 확인

mysql -u root -p

로 MariaDB 접속 후

MariaDB [(none)]>   select @@datadir;

명령어를 통해 아래와 같이 기존 Data 저장 위치를 확인할 수 있다.

+-------------------+
| @@datadir |
+-------------------+
| /var/lib/mysql/ |
+-------------------+
1 row in set (0.01 sec)

 

2. MariaDB 서비스 정지

sudo systemctl stop mariadb

 

3. 신규 Data 디렉토리 생성 및 MariaDB 데이터 복사

(Data 디렉토리를 /data/mysql로 변경)

sudo mkdir /data/
sudo rsync -av /var/lib/mysql /data/
sudo chown -R mysql:mysql /data/mysql

 

4. my.cnf 파일을 수정하여 MariaDB의 Data 디렉토리 경로 변경

sudo vi /etc/my.cnf

my.cnf 파일에 아래 내용을 추가하고 저장한다.

[mysqld]
datadir=/data/mysql
socket=/data/mysql/mysql.sock

[client]
socket=/data/mysql/mysql.sock

#symbolic-links=0
#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

 

5. SELinux 보안 Context 추가 및 서비스 시작

sudo semanage fcontext -a -t mysqld_db_t "/data/mysql(/.*)?"
sudo restorecon -R /data/mysql
sudo systemctl start mysql

 

6. 변경된 Data 디렉토리 확인하기

mysql -u root -p

로 MariaDB 접속 후

MariaDB [(none)]>   select @@datadir;

명령어를 통해 아래와 같이 기존 Data 저장 위치를 확인할 수 있다.

+-------------------+
| @@datadir |
+-------------------+
| /data/mysql/ |
+-------------------+
1 row in set (0.00 sec)

 

7. 기존 MariaDB Data 디렉토리 삭제하기

sudo rm -R /var/lib/mysql

삭제 후 저장소의 저장용량 확인은 df로 확인할 수 있다.

'Linux > mariaDB' 카테고리의 다른 글

[MariaDB] Character Set UTF8 변경  (0) 2023.06.13
[MariaDB] Linux에서 MariaDB 완전 삭제하기  (0) 2023.06.13
[MariaDB] MariaDB 설치하기  (0) 2023.06.13

+ Recent posts