본문 바로가기

뚝딱뚝딱웹공장

XE 마이그레이션으로 데이터 이전 시 게시물 누락 해결법

2001년경 처음 만든 동아리 홈페이지는 2012년까지 10년도 넘게 많은 리뉴얼을 거쳤다. 제로보드4로 시작하여 XE로 전환까지 시키며 꾸준히 관리했다.


시간이 흘러 나는 졸업을 했고 후배들의 무관심과 SNS의 발달로 홈페이지는 찬밥신세를 면치 못하였다. 졸업도 했고 일하느라 바쁜 와중에도 후배들을 위해 홈페이지를 꾸준히 운영해 주었지만, 찾는 이 없는 홈페이지는 용량의 압박으로 유지비만 들어가니 더는 운영할 의지도 필요도 없었다.


그렇게 몇 년이 흐르는 사이 나는 NAS에 눈을 뜨게 되었고 NAS에 홈페이지를 복구해 두었다. 언제든 볼 수 있고 언제든 다시 백업할 수 있으니 말이다.


그렇게 NAS를 꽤 오래 운영하며 나름대로 노하우가 생겼고 NAS가 2개로 늘어나면서 공간의 여유와 기술(?)도 생겼다. 두 번째 NAS에 사업장 홈페이지를 운영하면서 게시판 몇 개를 추가하여 동아리 홈페이지를 가져와서 다시 오픈 해야겠다는 욕심(?)이 생겼다.


개인용 나스(비공개 홈페이지) → 사업장 나스 (공개 홈페이지) 


여기부터 문제가 발생한다.


이미 운영 중인 사업장 홈페이지에 지장을 주지 않고 DB를 불러오는 방법도 알지 못하고, 잘 알지도 못하는데 함부로 DB를 건드리다 사업장 홈페이지에 문제가 생기면 큰 일이니 내 입장에서는 할 수 있는 최선은 기존 홈페이지 각 게시판을 XML로 추출해서 가져와 복구하는 것이었다.


그런데, 일부 게시판에서 게시물이 누락되는 현상이 발생했다. 예를 들어 자유 게시판에 3000개의 게시물이 있었는데, 복구는 1112번까지만 되는 것이다. XE 사이트와 XE TOWN에서 해결책이라고 제시된 것들을 이래저래 며칠을 삽질해도 해결되지 않았다.


https://www.xpressengine.com/tip/20486053 ☜ 여기에서 설명하기를 이전 버전과 상위 버전에서 회원 정보와 관련한 문제로 발생하는 문제라는 것이다. 하지만, 나는 이것으로 해결되지 않았다.


▲ 위 이미지에서 보면 문제가 발생하는 1112 게시물에 글쓴이가 나타나지 않는다. 그리고 이후의 게시물들은 복구되지 않았다.


발생하는 문제의 형태로 보아 회원정보와 관련된 문제가 맞긴 맞는 거 같다. 여러 방법을 계속해서 시도해보다 단순하고 무식한 방법을 택하여 해결하게 되었다. 


마이그레이션 작업에서 게시물 누락시 복구하는 무식한 방법


1. 복구 게시판에서 1111까지 정상 복구되고 1112번부터 문제가 발생하고 있다.

2. 복구 게시판에서 1112 게시물을 삭제 한다. 이 게시물 때문에 복구가 안 되는 것이다.

3. 기존 게시판에서 1~1112번까지 삭제한 후 1113 게시물부터 다시 XML을 추출하여 복구 한다.

4. 복구하다 보면 또 중간 문제가 발생하면 위의 형식을 반복 한다.


나는 3000여 개의 게시물이 있는 게시판을 마이그레이션 하는 과정에 위의 과정을 몇 차례 반복한 끝에 복구를 완료할 수 있었다. 그런들 어떠하리.... 기술이 없으면 노동이라도 잘 해야지... 아무튼 성공적으로 자료를 이전했으면 됐다.


회원정보가 없는 XE에 복구할 때는 발생하지 않지만, 회원이 있고 운영되고 있는 홈페이지에 복구할 때 발생하는 문제인 것 같기도 하다. 그러니 원본 게시판이 없으면 회원정보가 없는 깨끗한(?) XE에 복구하면 큰 문제 없이 잘 되지 않을까 싶다.