워드프레스 백업 및 복원 3가지 방법
ℹ️이 콘텐츠에는 광고가 포함되어,판매 발생 시 수익이 발생합니다.(네이버 쇼핑 커넥트, 아마존 어필리에이트, 애드센스 등)워드프레스 웹사이트를 운영하다 보면, 예상치 못한 오류나 변경 사항으로 인해 사이트를 이전 버전으로 복원해야 하는 상황이 발생할 수 있습니다. 이러한 경우를 대비해 정기적인 백업은 매우 중요합니다.
백업을 수행하는 방법은 크게 세 가지로 나눌 수 있습니다. 첫째, 웹 호스팅 서비스에서 제공하는 자동 백업 기능을 활용하는 방법입니다. 대부분의 호스팅 업체는 일정 주기로 사이트 데이터를 백업하며, 필요 시 관리자 페이지나 고객센터를 통해 복원이 가능합니다.
둘째, 워드프레스 백업 플러그인을 사용하는 방법입니다. 다양한 플러그인을 통해 파일과 데이터베이스를 주기적으로 백업하고, 클라우드 저장소와 연동하여 안전하게 보관할 수 있습니다.
셋째, 직접 서버를 운영하거나 SSH 접속이 허용된 웹 호스팅 업체를 이용하는 경우 명령어를 이용해 백업 파일을 생성하고 관리하는 방법입니다. 이 방식은 기술적인 이해가 필요한 만큼, 서버 관리에 익숙한 사용자에게 적합합니다.
1️⃣ 웹호스팅 업체 백업·복원 서비스
보통 워드프레스를 전문으로 하는 호스팅 회사는 cPanel을 지원하는 경우가 많습니다. 호스팅 회사에서 백업을 주기적으로 진행하거나 관리자 페이지 내에서 백업을 직접 진행할 수 있게 지원되며, 복원을 진행할 수 있는 안정적인 호스팅 회사를 선택하는 것이 중요합니다.
현재 uknew.co 워드프레스 사이트는 아마존 LightSail 리눅스 서버에서 운영되고 있습니다. 예전에 서버 관리에 할애할 시간이 부족했을 때 2년 정도 워드프레스 전용 호스팅을 사용한 적이 있습니다.
3군데 이상의 업체를 사용하면서 가장 만족도가 높고 현재 운영 중인 서버의 속도를 냈던 곳은 FastComet 이었습니다. 공유 호스팅 중 Extra를 사용했습니다.
속도 등 여러가지 기준이 있었지만 그 당시 테마와 플러그인 등의 여러가지 기능 테스트를 하는 기간이었기 때문에 백업과 복원이 매우 중요했습니다.
FastComet은 스타터부터 플러스까지 7일 백업 지원, 엑스트라 상품에서는 30일 백업 지원을 하고 있습니다.
2️⃣ 워드프레스 백업 플러그인
두 번째 안전장치로 워드프레스 백업 플러그인을 생각할 수 있습니다. 사용 중인 웹호스팅의 백업 기간이 짧거나 Google Drive, OneDrive 등의 외부 서비스에 백업 파일 저장이 필요할 경우 백업 플러그인 설치를 고려할 수 있습니다.
BackWPup, UpDraftPlus와 같은 백업 플러그인을 사용해서 백업 및 복구를 진행할 수 있습니다.
3️⃣ SSH 접속 후 워드프레스 백업 및 복구
AWS LightSail 등의 서버를 이용할 경우 플러그인 테스트와 같은 작업을 진행하기 전 수동으로 백업 및 복구 진행을 할 수 있습니다.
워드프레스 백업 및 복원은 항상 홈페이지 소스와 DB가 함께 백업되고 복원되어야 합니다. 홈페이지 소스(파일)에는 테마, 플러그인, 이미지 등이 포함되어 있고, DB(데이터베이스)에는 게시글, 댓글, 설정 정보 등이 저장되어 있기 때문입니다. 이 둘 중 하나라도 누락되면 워드프레스 사이트가 정상적으로 작동하지 않습니다.
🗂️ 백업
1. 홈페이지 소스를 백업합니다.
tar cfzp testpilotweb.tgz www/ &[1] 2440100
 testpilotweb]# jobs
[1]+  실행중               tar cfzp testpilotweb.tgz www/ &
 testpilotweb]# jobs
-bash: jbos: 명령어를 찾을 수 없음
[1]+  완료                  tar cfzp testpilotweb.tgz www/
 testpilotweb]# ll -a
합계 169564
drwxr-xr-x  4 testpilotweb nobody             141  8월 31 05:19 .
drwxr-xr-x. 7 root         root                89  7월  9 16:59 ..
-rwxr-xr-x  1 testpilotweb testpilotweb        18  4월 30  2024 .bash_logout
-rwxr-xr-x  1 testpilotweb testpilotweb       141  4월 30  2024 .bash_profile
-rwxr-xr-x  1 testpilotweb testpilotweb       492  4월 30  2024 .bashrc
-rw-r--r--  1 root         root         137643054  8월 31 05:19 testpilotweb.tgz
drwxr-xr-x  5 testpilotweb nobody            4096  8월 31 05:14 www
 testpilotweb]# 2. DB 백업을 진행합니다.
mariadb-dump -utestpilotweb -p testpilotweb > testpilotweb.sql Enter password: [패스워드 입력]
 testpilotweb]# ll -a
합계 169564
drwxr-xr-x  4 testpilotweb nobody             141  8월 31 05:19 .
drwxr-xr-x. 7 root         root                89  7월  9 16:59 ..
-rwxr-xr-x  1 testpilotweb testpilotweb        18  4월 30  2024 .bash_logout
-rwxr-xr-x  1 testpilotweb testpilotweb       141  4월 30  2024 .bash_profile
-rwxr-xr-x  1 testpilotweb testpilotweb       492  4월 30  2024 .bashrc
-rw-r--r--  1 root         root         137643054  8월 31 05:19 testpilotweb.tgz
-rw-r--r--  1 root         root           2174743  8월 31 05:37 testpilotweb.sql
drwxr-xr-x  5 testpilotweb nobody            4096  8월 31 05:14 www
 testpilotweb]# ⚙️복원
1. DB 복구(삭제 및 생성)
해당 계정(testpilotweb) 또는 root 계정으로 DB 접속을 진행합니다.
mariadb -uroot -p기존 생성한 DB 유저의 정보는 그대로 유지한 채 데이터 베이스 삭제 및 생성을 다시 진행합니다.
DROP DATABASE testpilotweb;CREATE DATABASE testpilotweb;
FLUSH PRIVILEGES;Query OK, 0 rows affected (0.004 sec)2. DB 파일 복구
mariadb -utestpilotweb -p testpilotweb < testpilotweb.sql 
Enter password: Enter password: 3. 소스 파일 복구
tar xzfp testpilotweb.tgz기존에 사용 중인 서버의 데이터 베이스 및 홈페이지 소스를 그대로 작업 전 백업 후 작업이 마무리되면 지금 같은 순서로 진행할 수 있습니다. 이와 같은 작업을 진행하는 이유는 백업 플러그인을 사용해서 간단하게 진행할 수 있지만 상황에 따라 백업 플러그인보다 빠른 복구가 필요할 경우 등이 있을 수 있습니다.
이는 리눅스 서버의 root 계정이 아니더라도 대부분의 웹 호스팅 업체에서 SSH 접속을 지원하기 때문에 콘솔 접속 후 작업이 익숙하다면 직접 SSH에서 워드프레스 백업 및 복구 작업을 진행할 수 있습니다.