본문 바로가기
IT일반

AWS EC2 아마존 Mysql 자동 백업 스크립트

by xavi2019 2019. 5. 15.

 

아래와 같이 비밀번호를 평문으로 노출하는 방식은

mysql 5.6 이상에서는 안됨.

(이렇게 하지 말것) $ mysqldump -u[dbuser] -p[password] -A > backup.sql

 

먼저 설정값을 저장해야 함

$ mysql_config_editor set --login-path=local --host=localhost --user=dbuser --password

이렇게 입력하면 dbuser의 비밀번호를 물어봄. 비밀번호 입력하여 local 이라는 설정값 저장

 

아래와 같이 해 보면 설정값이 저장됨을 확인 가능

$ mysql_config_editor print --all

제거는 $ mysql_config_editor remove

 

 

bash 쉘 파일 작성

#!/bin/bash
DATE=$(date +%Y%m%d%H%M)
BACKUP_DIR=/home/ec2-user/bakup/db/
mysqldump --login-path=local [db명] > $BACKUP_DIR"backup_"$DATE.sql

find $BACKUP_DIR -ctime +3 -exec rm -f {} \;

크론탭 등록 crontab -e

 

매일 오전 10:30분에 백업 실행

30 10 * * * /home/ec2-user/script/db_backup.sh

매일 매시간 0분 20분 40분 실행

0,20,40 * * * * /home/ec2-user/script/db_backup.sh

 

크론탭 재 실행

$ sudo service crond restart

댓글