idccc.com 이 쓰는 MySQL DB서버는 3.23에서 db data 변경없이 4.0으로 옮겨 왔습니다.
로그파일에는 에러가 보였으니 사용함에 문제가 없어서 계속사용하였으며, 얼마전 4.0에서 4.1로 옮겨올때도 별도의 db data 변경작업 없이 3.23 때 부터쓰던 데이터를 그대로 사용하였습니다.
그러나 다른 사용자분들께서 에러가 발생하였고 고치려 하다가 오히려 db가 망가져 버려서, 백업 해놓은 파일(db data를 그냥 압축해 놓은것, dump 뜬것 아님)을 가지고 복구 하게되었습니다.
1. 복구에 필요한 db파일을 준비합니다
(dump 뜬것이면 그냥 import 시키면 되므로 무효!)
2. www.mysql.com에서 4.0 버젼의 컴파일된 binary 버젼을 받습니다.
(컴파일 시간을 벌기위해서이며, 전 스탠다드 버젼을 받았습니다.)
3. 받은 binary 버젼으로 새롭게 mysql 서버를 구성합니다.
(기존의 mysql 서버는 셧다운 하신 후, mysql_install_db 를 사용하여 새롭게 db를 만들어야 합니다.)
4. binary 버젼으로 새롭게 구성된 mysql 서버 db 디렉토리에다가 1번에서 준비한 복구에 쓸 db파일을 압축 풉니다.
5. mysqldump 로 복구할 모든 DB를 덤프 뜹니다.
(mysql, test 테이블 제외)
6. 덤프뜬 sql 파일을 잘 가지고 계시고 binary로 구성된 mysql 서버를 제거 합니다.
(셧다운 까지 해주는 센스!)
7. 기존에 있던 4.1용 mysql_install_db로 새로운 db를 만듭니다.
8. 기존에 있던 4.1 mysql 서버를 구동 시킵니다.
9. 덤프로 통해 얻게된 sql파일을 import 시킵니다.
다른것은 다 문제없이 동작하였는데, zero counter 부분에서 프라이머리 키에서 중복이나서 중복나는 키를 삭제한것 외에는 정상적으로 복구 되었습니다.
이것이 정확한 정보인지 확신하지 못합니다.
다만 제 경우에는 문제없이 처리 되었습니다.