DEMO blogZ 데모 · 매일 새벽 4시 초기화 demo 계정으로 로그인하면 블로그 주인이 되어 글쓰기 · 관리 화면을 써 볼 수 있습니다

작은 서비스를 만들고 운영하며 배운 것들

운영 · 인프라작은 서비스 운영기 · 2편

백업은 복원해 봐야 백업이다

작은 서비스 운영기 2편

윤서 1분 읽기

매일 밤 백업이 돌고 있었다. 그런데 한 번도 복원해 본 적이 없었다. 불안해서 주말에 새 서버를 하나 빌려 복원 훈련을 했다. 결과는 반쯤 실패였다.

발견한 문제

  1. DB 덤프에 트리거가 빠져 있었다.
  2. 첨부 파일 백업이 권한 문제로 절반만 복사되고 있었다.
  3. 복원 절차를 아는 사람이 나 하나뿐이었다.
# 고친 백업 명령
mysqldump --single-transaction --routines --triggers mydb | gzip > db-$(date +%F).sql.gz
tar --exclude='files/cache' -czf files-$(date +%F).tar.gz files

석 달에 한 번, 다른 서버에 실제로 복원해 보는 일정을 달력에 넣어 두었습니다.

복원 훈련을 한 뒤로 새벽 알림이 와도 덜 무섭다. 최악의 경우에도 어디까지 되돌릴 수 있는지 알기 때문이다.