기본 콘텐츠로 건너뛰기

라벨이 쉘스크립트인 게시물 표시

Linux MySQL 자동 백업 구축: Crontab과 Shell Script 완벽 가이드

SERVER AUTOMATION Linux MySQL 자동 백업 구축: Crontab과 Shell Script 완벽 가이드 운영 서버의 안정성을 담보하는 데이터 백업 전략은 필수입니다. mysqldump와 Crontab을 활용해 DB 및 웹 데이터를 주기적으로 백업하고, 오래된 파일을 자동 정리하는 자동화 스크립트 작성법을 소개합니다. 📑 목차 1. 자동 백업 쉘 스크립트 작성 (DB + 파일) 2. Crontab을 이용한 스케줄링 등록 3. 엔터프라이즈 운영을 위한 보안 및 최적화 1. 자동 백업 쉘 스크립트 작성 (DB + 파일) 가장 먼저 수행할 작업은 MySQL 덤프와 웹 디렉터리 압축, 그리고 보관 주기가 지난 파일의 자동 삭제 를 처리하는 쉘 스크립트( backup.sh )를 작성하는 것입니다. 전체적인 백업 로직의 흐름은 아래와 같습니다. 아래 스크립트는 날짜 기반으로 파일을 생성하고, 7일이 지난 백업본을 자동으로 정리하여 디스크 공간을 효율적으로 관리합니다. #!/bin/bash # 1. 날짜 포맷 설정 (YYYYMMDD) DATE=$(date +%Y%m%d) # 2. 백업 경로 설정 (환경에 맞게 수정) DB_BACKUP_DIR=/backup/db WEB_BACKUP_DIR=/backup/web WEB_DIR=/www_dir ##### MySQL 데이터베이스 백업 ##### # 개별 DB 백업 (권장) # --opt 옵션은 덤프 속도를 높여줍니다. mysqldump -uroot -pPASSWORD db_name > "$DB_BACKUP_DIR/db_name_${DATE}.sql" # 전체 DB 백업 (필요 시 주석 해제) # mysqldump -uroot -...