본문 바로가기

스크립트

데이터베이스(DB) 백업 스크립트

반응형

데이터베이스(DB) 백업 스크립트

dbbackup.sh 스크립트 작성

vim dbbackup.sh
#!/bin/bash

# 데이터베이스 백업 스크립트

# 데이터베이스 접속 정보 설정
DB_USER="root"
DB_PASSWD="dbpasswd"

# 백업 디렉토리 설정
DB_BACKUP_DIR="/backup_dir"

# 필요한 명령어 경로 설정
MYSQL=$(which mysql)
MYSQLDUMP=$(which mysqldump)

# 전체 데이터베이스를 백업하는 경우
${MYSQLDUMP} --user=${DB_USER} --password=${DB_PASSWD} --all-databases | gzip > "${DB_BACKUP_DIR}/full_backup-$(date +%Y%m%d).gz"

# 개별 데이터베이스를 백업하는 경우
ZDB_NAME="zabbix_db"
RDB_NAME="racktables_db"

${MYSQLDUMP} --user=${DB_USER} --password=${DB_PASSWD} ${ZDB_NAME} | gzip > "${DB_BACKUP_DIR}/${ZDB_NAME}-$(date +%Y%m%d).gz"
${MYSQLDUMP} --user=${DB_USER} --password=${DB_PASSWD} ${RDB_NAME} | gzip > "${DB_BACKUP_DIR}/${RDB_NAME}-$(date +%Y%m%d).gz"

# 14일 이전의 백업 파일 삭제
find ${DB_BACKUP_DIR} -ctime +14 -exec rm -f {} \;

스크립트에 실행 권한을 부여

chmod +x dbbackup.sh

스크립트 실행

./dbbackup.sh

 

728x90
반응형