> 작성일 : 2017-09-27
vi {저장경로}/Backup.sh
#!/bin/bash
today=`date +%Y%m%d`
deleteDay=`date +%Y%m%d -d '-[백업파일보존일수]days'`
backupDirectory="[파일저장경로]"
dbList='[데이터베이스1] [데이터베이스2]'
### create Folder ###
echo "createDay : "$today
/bin/mkdir -p ${backupDirectory}/${today}_all
cd ${backupDirectory}/${today}_all
echo "OK"
### backup Project ###
for db in $dbList; do
echo "backupDB : "$db
/bin/mkdir -p ${backupDirectory}/${today}_all/$db
mysqldump -u [아이디] -p'[비밀번호]' --skip-add-drop-table --no-create-info --complete-insert --ignore-table=[제외시킬테이블] $db > ${backupDirectory}/${today}/$db/$db.sql
done
crontab -e
# 새벽 5시에 백업
00 05 * * * [쉘파일저장경로]backup.sh
[MYSQL경로]/mysql -u [아이디] -p [데이터베이스1] < [백업파일저장경로][데이터베이스1].sql
[MYSQL경로]/mysql -u [아이디] -p [데이터베이스2] < [백업파일저장경로][데이터베이스2].sql
[MYSQL경로]\mysql.exe -u [아이디] -p"[비밀번호]" [데이터베이스1] < "[백업파일저장경로][데이터베이스1].sql"
[MYSQL경로]\mysql.exe -u [아이디] -p"[비밀번호]" [데이터베이스2] < "[백업파일저장경로][데이터베이스2].sql"
Tags : CentOS, database, development, mysql, server, db backup