반응형

MariaDB의 데이터가 쌓이는 실제 디스크의 위치를 변경하여 사용하고자 할때 적용한다.

용향이 큰 서버일경우나 또는 데이터가 쌓이는 곳을 다른 파티션 또는 디스크로 관리하기 위함.

 

CentOS7 & MariaDB 10.4 기준입니다.

 

mysql -u root -p

root 로 접속 하여 현재 데이터디렉토리를 확인 합니다.

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

 

기본적으로 설치했을 경우 /var/lib/mysql에 데이터디렉토리가 설정되어 있습니다.

 

자 이제 변경해 봅시다.

 

1. 서비스 중지

sudo systemctl stop mariadb

 

2. 새로운 디렉토리 생성 및 설정

 - 저의 경우 파티션을 나누었기 때문에 /database로 변경만 하도록 하겠습니다.

 

설정내용 연결

sudo rsync -av /var/lib/mysql /database

sudo chown -R mysql:mysql /database

 

3. data디렉토리 변경

sudo vi /etc/my.cnf
...더보기

[mysqld]

datadir=/home/data/mysql

socket=/home/data/mysql/mysql.sock

 

[client]

socket=/home/data/mysql/mysql.sock

#symbolic-links=0

#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

 

4. SELinux 보안 context 추가 및 서비스 시작

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

sudo systemctl start mariadb

 

5. 확인

mysql -u root -p

root 로 접속 하여 데이터디렉토리가 변경된 것을 확인 합니다.

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

6. 기존 디렉토리 삭제

sudo rm -rf /var/lib/mysql

df -h

마지막으로 용량 확보 확인 후 끝.

 

완료!

반응형

'IT > DB' 카테고리의 다른 글

SQLD 기출문제(CBT)  (0) 2023.03.02
MariaDB 시간 설정  (0) 2019.07.29
CentOS7 & MariaDB 설치  (0) 2019.07.22
maria DB index 생성  (0) 2019.07.13
mariaDB 계정 생성 및 database 접근권한 설정  (0) 2019.07.10
Posted by 투명강아지
,
반응형

GCP에서  CentOS7을 사용할 경우 디스트를 추가하여도 자동으로 적용 되지 않는다

디스트를 수동으로 마운트 해준다.

 

파티션 및 디스크 현황 확인

sudo lsblk

 

현재 sba디스크가 sba1으로 파티션 되어 있고 root가 사용중임.

추가로 sdb, sdc디스크를 마운트 해주려고 한다.

 

우선 디스크를 포멧 한다.

sudo mkfs.ext4 -m 0 -F -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/[DEVICE_ID]

DEVICE_ID는 sdb, sdc이다.

 

 

마운트를 하기 위해 디렉토리를 생성한다.

 - 저는 root에 생성하였습니다.

cd /
sudo mkdir -p databse data

database : 데이터 베이스 영역

data : 첨부파일 등 각종 파일 영역

 

마운트 해줍니다.

 

sudo mount -o discard,defaults /dev/sdb /database
sudo mount -o discard,defaults /dev/sdc /data

 

각각의 폴더에 마운트 되었습니다.

 

 

-------- 추가사항 --------

 

인스턴스가 재실행 될 경우 마운트가 해제됩니다.

재시작 이후에도 자동으로 마운트를 해주어야 합니다.

 

1. 자동설정의 내용을 백업합니다.

sudo cp /etc/fstab /etc/fstab.backup

 

디스크의 UUID를 확인 합니다.

sudo blkid /dev/[DEVICE_ID]

출력 : /dev/[DEVICE_ID] UUID="[UUID]" TYPE="ext4"

 

  • [DEVICE_ID]는 자동으로 마운트하려는 영구 디스크의 기기 ID입니다. 디스크에 파티션 테이블을 만드는 경우, 마운트하려는 파티션을 지정합니다.
  • [UUID_VALUE]는 /etc/fstab 파일에 포함시켜야 하는 영구 디스크의 UUID입니다.

 

자동으로 마운트할 내용을 설정 합니다.

sudo vi /etc/fstab

아래 항목 입력

 

UUID=[UUID_VALUE] /mnt/disks/[MNT_DIR] ext4 discard,defaults,[NOFAIL_OPTION] 0 2

 

또는

 

echo UUID=`sudo blkid -s UUID -o value /dev/sdb` /database ext4 discard,defaults,nofail 0 2 | sudo tee -a /etc/fstab
echo UUID=`sudo blkid -s UUID -o value /dev/sdc` /data ext4 discard,defaults,nofail 0 2 | sudo tee -a /etc/fstab

 

마지막으로 정상적으로 설정된 내역이 있는지 확인

cat /etc/fstab

 

완료!

반응형
Posted by 투명강아지
,