콘텐츠로 건너뛰기

[DataBase][Linux] MySQL DB Backup Script 제작, Crontab auto Backup

매번 그때그때 mysqldump 명령어를 사용하여 DB와 워드프레스 Content 파일을 백업하는게 힘들어서 간단하게 백업 스크립트를 만들고 crontab에 올리는 방법을 설명하겠다.

스크립트 파일은 각각 백업주기를 관리하기 쉽게 두개를 제작하였다.

■ 스크립트 제작

DB 백업을 위한 스크립트
Content 백업을 위한 스크립트
  • DATE

: 시간 정보를 받아오기 위한 변수 선언

  • BACKUP_DIR

: 백업 경로 지정

  • 3번째 라인
# mysqldump -u root -p wordpress > $BACKUP_DIR"backup_DB"$DATE.sql

: wordpress DB를 설정해놓은 경로에 backup_DB + “현재 시간 정보”.sql로 저장한다.

# cp -r /var/www/html/wp-content $BACKUP_DIR"WP-Content_Back-"$DATE

: wp-content 디렉토리를 지정해 놓은 경로에 WP-Content_Back- “현재 시간 정보” 로 저장한다.

실행 확인

백업 스크립트를 같이 실행시켰고 DB 백업을 위해 패스워드를 묻는 화면이다.

잘 작동한 것을 확인하였다.

Crontab 설정

나는 자주 실행하는 스크립트들을 crontab에 올려 사용하고 따로 관련 프로그램을 설치하여 사용하고 있다.

# nano /etc/crontab

에디터 하단 하루 한번 백업 스크립트를 수행하라는 명령을 추가한 모습을 확인할 수 있고 control + X 키로 저장하고 빠져나오면 된다.

물론 패스워드를 입력받아야하는 DB 백업 스크립트의 경우 조금 더 손을 봐야겠지만 content 백업은 정상 작동 될 것이다.


  • 추가

추가적으로 DB 백업 스크립트에 키를 하드코딩해주어 정상적으로 백업이 진행되는 것을 확인하였다.

수정 후 crontab
정상 작동 확인

답글 남기기