태그 보관물: MySQL

MySQL 백업 스크립트

일자별로 MySQL 데이터베이스를 백업할 일이 있어서 셸 스크립트다.

#!/bin/bash

DATE=$(date +%Y%m%d)
BACKUP_DIR=<백업 파일을 저장할 디렉터리>
mysqldump -u <사용자 ID> -p<비밀번호> <DB명> > $BACKUP_DIR"backup_"$DATE.sql
tar -cvzf $BACKUP_DIR"backup_"$DATE.tar.gz $BACKUP_DIR"backup_"$DATE.sql --remove-files

이 셸 스크립트를 cron에 등록해 두면 BACKUP_DIR에 지정한 디렉터리에 backup_20210902.tar.gz 같은 파일명으로 백업 파일이 저장된다.

cron 잡에는 다음과 같이 등록해서 매일 새벽 4시에 실행되도록 만들어뒀다.

0 4 * * * /home/<user>/scripts/mysql-backup.sh >> /home/<user>/logs/mysql-backup.log 2>&1