back to top
7.2 C
New York
목요일, 12월 19, 2024

Buy now

[워드프레스 Tips] 백업 플러그인없이 자동으로 정기 백업하는 방법 – 가상서버호스팅(VPS)의 경우

1. 정기 백업의 필요성에 대해서

일반 웹호스팅을 사용하면 호스팅사에서 일정 정도 정기 백업을 해줍니다. 어떤 곳은 1주일정도를 보관하는 경우도 있었습니다.
그래서 사이트 문제가 있을 경우 롤백을 하기도 하지요.

그런데 웹호스팅에서도 점차 백업의 책임을 사이트 운영자에게 넘기고 자료 보관의 문제인지는 몰라도 백업본을 매일 보관하지는 않는 것 같습니다.

최근에 이용했던 아이비호스팅은 운영자가 백업을 요청하고 이를 백업본을 사이트에 올려주는 시스템이고 자동 백업은 주당 한번정도 해서 보관하고 있었습니다. 사이트에 문제가 생겨 자동 백업한걸로 롤백해 달라고하니 (일주일에 한번 백업한다고하면서) 가장 최근 백업된거라고하며서 3일전 자료로 롤백해주더군요.

일반적으로 사이트에 문제가 생기면 바로 이전치 백업자료가 필요하므로 가능하면 매일 매일 백업된 자료가 있는게 좋습니다.

더우기 가상서버호스팅을 하는 경우 아무도 백업을 도와 주지 않으므로 정기적으로 백업할 수 있는 시스템을 갖춰놓는것은 너무도 당연한 일입니다.

가상서버호스팅에서 워드프레스를 운영한다는 기준에서 정기 백업 방법은 백업 플러그인을 사용하는 방법과 서버에서 자동화 스크립트를 이용하는 방법의 2가지가 있습니다.

여기에서는 가능하면 플러그인을 사용하자말자는 주의에 따라 서버에서 자동화 스크립트를 이용하는 방법에 대해서 살펴보겠습니다.

아래 내용은 Automate Your WordPress Backup With Simple Shell Scripting & CRON를 참조해 수정하였습니다.

2. 자동 백업 스크립트 작성

이전에 DB 백업 방법에 대해서 포스팅한적이 있습니다.
여기에서도 이 DB 백업 방법을 활용해 스크립트를 작성해 보겠습니다.

스크립트를 작성하는 여러 방법이 있겠지만 가장 간편한 vi 편집기를 사용합니다.
vi 편집기로 wpbackup.sh라는 스크립트 파일을 만듭니다. 당연 파일이름은 원하시는대로 적으면 됩니다.

vi wpbackup.sh

#!/bin/sh
mysqldump -uroot -p데이타베이스비밀번호 데이타베이스이름 > /home/mysite/wpbackup.sql
cp wpbackup.sql "wpbackup$(date +%Y%m%d%H%M).sql"
  • root에는 db 계정명을 적습니다. 대부분 root를 쓰는 경우가 많은 것 같습니다.
  • 자동으로 만들어야하므로 DB에 접속하는 비밀번호를 입력해야 합니다.
  • 데이타베이스 이름을 적습니다.
  • wpbackup.sql 부분에는 저장할 폴더 위치 및 파일명을 적습니다.
  • wpbackup.sql 파일 이름에 백업한 날짜를 이용해 파일 이름을 바꾸어 줍니다. 그러면 날짜별로 백업을 할 수 있습니다.

참고로 sh 파일을 실행시키는 방법은

  • 첫째는 sh **.sh로 sh를 사용
  • 둘째는 ./**.sh를 사용

VI-편집-화면

3. 크론탭에서 CRON 명령어를 등록

크론탭에서 CRON 명령어를 설정하는 방버에는 2가지가 있습니다.

첫째는 crontab -e 명령어를 사용해서 등록하는 것이구요.

crontab -e   # 이 명령어로 crontab(크론탭) 명령을 입력, 편집 합니다.

50 04 * * * wpbackup.sh  # 크론 맨 마자막 줄에  매일 새벽 4시30분에 작업 수행토록 명령

둘째는 /etc/crontab에 직접 등록하는 방법입니다. 이 우는 vi, nano와 같은 편집기로 crontab 파일을 열어서 직접 편집을 합니다.
이 방법을 적용하려면 반드시 ROOT 사용잘ㄹ 표시해 주어야 합니다.

50 04 * * * root /root/wpbackup.sh

이 두가지 방법에 대한 자세한 설명은 차이는 서버에서 자동 실행을 가능케 해주는 crontab(크론탭) 설정 방법 을 참고하시기 바랍니다.
저의 경우는 첫번째 방법은 무리없이 작동하는데 둘째 방법은 대부분 제대로 작동하지 않더군요. 그래서 저는 첫번째 방법을 권하고 싶습니다.

뒤 2가지 방법 모두 매일 오전 4시 50분에 wpbackup.sh 를 실행하라는 명령입니다.

너무 간단하지만 유용하게 사용할 수 있습니다. 최소 하루 전 데이타베이스백업은 가능합니다.

그리고 이렇게 백업 받을 파일을 바로 Dropbox같은 클라우드로 보내어 보다 더 안전하게 백업할 수 있는 방법이 있는데요.

드랍박스로 보다 더 안전하게 백업할 수 있는 방안에 대해서는 랜섬웨어 대응, 매일 매일 자동으로 드롭박스(Dropbox)로 백업 받는 방법 을 참조하세요.

구름위의 풍광3567042689f5-12

spot_img

Latest articles

Related articles

spot_img