Linux

MariaDB 백업 및 복구하기

  • -
반응형

최근 Cafe24 가상 서버를 구매해 DB 서버를 만들었습니다. 직접 DB를 구축했기 때문에 운영 중 DB가 어떤식으로든 깨지거나 복구가 필요한 상황이 발생할 것을 대비해 백업과 복구 설정이 필요했습니다.

이번 포스팅에서는 가상 서버에 설치된 DB를 백업/복구할 수 있는 방법을 알아보겠습니다.

 

※ 테스트 환경
  • Rokcy 8

백업

먼저, DB를 조회해보겠습니다.

mysql -u root -p

show databases;

 

deardayz라는 DB를 백업하겠습니다.

아래 명령어를 통해 sql 파일이 생성되는지 백업 테스트를 해봅니다.

cd /home

# 백업 폴더 생성
mkdir backup
mysqldump -u계정 -p패스워드 deardayz > deardayz.sql

 

crontab을 통해 주기적으로 백업 명령어가 실행될 수 있도록 스크립트 파일을 만들어보겠습니다.

# 스크립트 폴더 생성
mkdir script
vim db_backup.sh

 

스크립트 내용

7일이 경과한 백업 파일은 삭제시켰습니다.

#!/bin/bash

# 현재 날짜
now=$(date +%Y%m%d%H%m)

# 경로
path="/home/backup/"

# 백업 실행
mysqldump -u계정 -p패스워드 deardayz > ${path}"deardayz_"${now}.sql

# 7일 경과 파일 삭제
find ${path} -type f -name "*.sql" -mtime +7 -exec rm -f {} \;

 

스크립트 파일에 실행 권한을 부여합니다.

# 권한 부여
chmod 711 db_backup.sh

# 스크립트 실행
./db_backup.sh

 

이제 crontab에 해당 스크립트를 등록합니다.

crontab -e

# 매일 자정 DB 백업 실행
0 0 * * * /bin/bash /home/script/db_backup.sh

 

 

복구

이제 백업한 파일을 사용해 DB 복구를 진행해보겠습니다.

테스트를 위해 기존 DB는 삭제합니다.

drop database deardayz;

 

 

복구 실행전 다시 DB를 먼저 생성합니다.

create database deardayz character set utf8mb4;
cd /home/backup
mysql -u 계정 -p deardayz < deardayz_202501101701.sql

#패스워드 입력
Enter password:
반응형

'Linux' 카테고리의 다른 글

방화벽 사용법  (0) 2025.01.09
-bash command not found  (0) 2024.10.07
폐쇄망 Tomcat 설치하기  (2) 2024.10.04
폐쇄망 GitLab 설치하기  (1) 2024.10.02
폐쇄망 Java 설치하기  (1) 2024.09.30
Contents

포스팅 주소를 복사했습니다.

이 글이 도움이 되었다면 공감 부탁드립니다.