프로그래밍(TA, AA)/스크립트
[쉘스크립트] crontab 및 mysqldump 실행하여 주기적 DB백업 수행
12bme
2017. 4. 5. 00:59
데이터베이스는 주기적으로 백업하여, 유사시 전일 데이터로 복원할 수 있도록 해야한다.
아래 스크립트는 mysqldump를 실행하여 DB백업 압축파일을 저장하는 쉘스크립트이다.
#!/bin/bash
cd /root/backup/daily/
DATE_YYYYMMDDHHMMSS=`date '+%Y%m%d%H%M%S'`
dailysql=$DATE_YYYYMMDDHHMMSS'_daily.sql'
password='password'
echo "mysql dailysql dump start.."
mysqldump -uroot -p$password --single-transaction databasename > ./$dailysql
echo 'dumpfile : '$dailysql
tar cvzf ./$dailysql'.tar.gz' ./$dailysql
rm ./$dailysql
echo 'compression file : './$dailysql'.tar.gz'
echo "mysql dailysql dump stop.."
위 스크립트를 생성한 후, crontab -e 명령어를 입력 후, 크론잡을 설정할 수 있다.
0 4 * * * /root/backup/db_backup.sh
내가 관리하는 서버에서는 매일 새벽 4시 해당 쉘이 실행되어 DB가 백업되도록 설정하였다.
crontab -l 명령어를 입력하면 현재 설정된 크론잡 리스트를 확인할 수 있다.