본문 바로가기
Scrap/New Concepts

게시판 한개만 다른 계정으로 백업하기.

by 개인교수 2006. 2. 27.
안녕하세요. 이런 것 처음 올려보네요.
고생을 좀 해서.. 혹시 이런걸 필요로 하는 분이 있을지도 몰라 써둡니다.

저는 제로보드를 잘 쓰고 있다가 다른 계정으로 게시판을 옮겨야 하는 상황이 되었습니다.
그 다른 계정이라는 것이 이미 제로보드가 깔려서 몇개의 게시판이 운영중인 계정이었죠.
그러니 DB를 통채로 들이부을 수가 없었습니다.

일단 옮기려는 게시판을 백업합니다.

게시판 하나만 백업하는 경우, 해당 테이블만 백업하면 되겠죠.
phpmyadmin 이나 mysql 에 직접 접속해서 show tables from DB이름 했을 때 보이는 테이블 중 백업하고자 하는 게시판의 이름이 들어간 테이블만 골라서 백업합니다.

mysqldump -u 사용자ID -p 사용자암호 DB이름 테이블이름(테이블이 여러개면 다 써주세요. 보통 게시판 하나는 네개의 테이블로 구성됩니다) > backup.sql

이러면 게시판 하나만 백업되었습니다.

그럼 이제 이 백업파일을 옮기고자 하는 계정에 업로드합니다.

이 다음이 조금 귀찮습니다.

제로보드 어드민 메뉴에서 새 게시판을 생성해주세요. 이름은 옮기려는 게시판 이름과 같게 하셔야 합니다.
그런다음 phpmyadmin 이나 mysql 에 접속하셔서 아까 백업하셨던 테이블과 같은 이름의 테이블을 삭제하셔야 합니다. 게시판 하나를 옮긴다면 테이블 네개겠죠? 네개 모두 drop시킵니다. 안그러면 덤프뜬 데이타 부으면서 기존테이블 있다고 뱉어버립니다. 그냥 데이타를 붓지 않고 일부러 빈 게시판 만들어서 테이블 삭제를 하는 이유는 어드민 테이블에 게시판 정보가 있어야 하는데 그렇다고 그걸 insert로 때려넣을 수도 없기 때문입니다. 그래서 이런 편법을 썼습니다.

이제 백업된 데이타를 DB에 붓습니다.

mysql -u 사용자ID -p 사용자암호 DB이름 < backup.sql

제대로 되었다면 에러없이 데이타가 부어집니다.

이제 제로보드 어드민 메뉴로 돌아옵니다.
게시판 관리 메뉴를 보면 새로 데이타를 부었는데도 게시물 수가 0 으로 나옵니다. view 로 게시판을 보면 더 황당합니다. 번호는 0번부터 마이너스로 매겨져있고 페이지도 하나뿐입니다. 글도 이상할겁니다.

이 게시판에 아무 글이나 새로 써보세요. 그러면 글번호도 제대로 매겨지고 다 괜찮아집니다.

마지막으로 제로보드 어드민 메뉴의 게시판 관리에서 오류복구 기능을 한번 실행해주세요.


끝났습니다.
이 노가다를 시험하느라 반나절이 걸렸네요.
유용하게 쓰실 분 있으시기 바랍니다. 그럼...
[펌]

'Scrap > New Concepts' 카테고리의 다른 글

김빠진 맥주 활용법  (0) 2006.03.23