forum.atlas-games.com의 Discourse 설치 환경을 망쳐 버렸습니다. PostgreSQL 12로 업데이트해야 했는데, 7GB 크기의 데이터베이스를 위해 11GB의 여유 공간만 있었기 때문에 계속 오류가 발생했습니다. 그래서 여기의 “수동 업데이트” 방법을 사용했습니다: PostgreSQL 12 update
모든 작업이 정상적으로 완료된 것처럼 보였습니다(오류 없음), 하지만 이제 사이트가 기본 설정으로 초기화되어 다시 가입하고 처음부터 설정하라고 요구합니다 … 게시물도, 사용자도, 설정도 없습니다. 백업은 가지고 있다는 것을 알고 있습니다 … Digital Ocean에 월 $2를 지불하여 주간 백업을 받고 있는데(3일 전 것인 것 같습니다), 포럼 자체의 내부 백업도 접근 가능한 것 같습니다(4일 전 것). 실제로 데이터를 잃어버린 것이 아니라, 데이터를 다시 연결할 수 있는 방법이 있기를 바라고 있습니다. 다만 “./launcher cleanup” 명령을 실행하긴 했습니다.
터미널 명령어 du -h /var/discourse/shared/standalone/postgres_data를 사용하여 데이터베이스 크기를 확인했습니다.
데이터베이스 크기가 이전의 7GB에서 83MB로 줄어 있었습니다. 따라서 업데이트 과정에서 실제로 데이터베이스가 덮어쓰기(overwrite)된 것으로 보입니다. PostgreSQL 업데이트 시 업데이트 지침에 따라 ./launcher cleanup를 실행했기 때문에, 백업 외에는 되돌릴 수 있는 것이 없습니다. Discord가 데이터베이스와 단순히 연결이 끊어진 상황이 아니었습니다.
백업을 복원했으며, 며칠간의 게시글을 잃는 것은 감수할 수 있습니다(업데이트 전에 백업을 하지 않은 제 실수입니다). 결국 다시 시도해야 하므로, PostgreSQL 업데이트가 왜 제 데이터베이스를 덮어썼는지 이유를 알고 싶습니다.