시놀로지 MariaDB 자동백업 후 FTP 전송 shell 파일작성
목적 mariadb 백업파일로 7일간 파일로 저장후 순차적으로 삭제한다.
backup.sh 파일로 저장
==============================
# 백업설정
TODAY=`date +%Y%m%d`
DELETE_DATE=`date -d "-7 days" +%Y%m%d`
BACKUP_DIR=/volume1/backup/백업폴더/db
#LOG_DIR=/volume1/backup/백업폴더/log
#필요한 디렉토리 생성
if [ ! -d ${BACKUP_DIR} ]
then
mkdir ${BACKUP_DIR}
chmod 700 ${BACKUP_DIR}
fi
# DB Root 계정정보
DB_USER="DB계정"
DB_PW="DB계정 비밀번호"
#특정 DB 백업
SQL_FILE="DBbackup.sql"
mysqldump -u ${DB_USER} -p${DB_PW} -h 192.168.000.00 DB명 > ${BACKUP_DIR}/${TODAY}_${SQL_FILE}
# 백업서버 FTP 계정정보
FTP_HOST="FTP IP"
FTP_USER="FTP 계정"
FTP_PW="FTP 패스워드"
# FTP 연결 및 업로드
lftp -u ${FTP_USER},${FTP_PW} ${FTP_HOST} <<EOF
set ftp:ssl-allow no # SSL을 사용하지 않음 (필요에 따라 설정)
lcd ${BACKUP_DIR}
rm -f ./${DELETE_DATE}_${SQL_FILE}
mput ${TODAY}_${SQL_FILE}
bye
EOF
# 로컬 7일 이전 날짜 삭제
rm -f ${BACKUP_DIR}/${DELETE_DATE}_${SQL_FILE}