sub_title
 MySQL
제   목 실수로 삭제한 mysql DB 복구방법
작성자 비가오니 등록일 2007-09-14 15:28:26 조회수 25,214

실수로 삭제한 mysql DB 복구방법

delete나 truncate 같은 명령으로 데이터를 지웠을때 복구하는 방법입니다.
mysql의 모든 명령들은 로그를 남기기때문에 가능합니다.

일단 mysql의 DB가 쌓이는 디렉토리로 이동합니다.

대게 /usr/local/mysql/data /usr/local/mysql/var 등으로 설정해 놓으셨을겁니다.
해당 디렉토리로 이동하면 xxx-bin.001 xxx-bin.002 같은 바이너리 파일들이 존재할겁니다.

이게 바로 DB를 첨 생성할때부터 지금까지 쌓여온 로그인데요 이 파일을 활용하시면 삭제된 데이터도 살릴수 있습니다.
바이너리 파일이기때문에 그냥 접근하시면 이상한 문자들이 보이구요
mysqlbinlog 명령을 이용하셔서 사용해야 합니다.

다음은 예제입니다.

일단 DB 디렉토리로 이동한다.

# cd /usr/local/mysql/data

바이너리 파일을 소스파일로 변환한다.
# ../mysqlbinlog leopit-bin.002 > rescue.sql

필요한 구문만 가져온다.
# grep "insert" rescue.sql > rescue1.sql

이렇게 하시면 rescue1.sql은 지금까지의 인서트구문이 다 들어옵니다.
여기서 필요없는 부분은 지우세요

이제 최종적으로 DB에 삽입만 하시면 됩니다.
# mysql -u 계정아이디 -p DB이름 < rescue1.sql

 
0
    
 
5
        list
 
※ 짧은 댓글일수록 예의를 갖추어 작성해 주시기 바랍니다.
line
reply cancel
 
번호 제목 글쓴이 추천 조회 날짜
24  MySQL JOIN 걸어서 업데이트(UPDATE) 하기   member 높이뜬새 27 / 3 138662 2010-01-04
23  MySQL flush privileges 명령어 이미지   member 높이뜬새 5 / 0 34459 2009-11-25
22  MySQL 세자리 마다 콤마 찍기 이미지   member 높이뜬새 3 / 0 23746 2009-11-19
21  MySQL 백업시 캐릭터셋(charset) 지정하기   member 높이뜬새 2 / 1 13941 2009-05-27
20  MySQL 에서 root 암호 변경하기   member 높이뜬새 1 / 0 3691 2008-12-23
19  MySQL 테이블 타입(Heap, MyIsam, InnoDB...) 변경하기   member 높이뜬새 1 / 0 8970 2008-09-16
18  MySQL 쿼리 결과 값 세로로 보기   member 컴퓨터존 2 / 0 4617 2008-08-25
17  MySQL 테이블의 구조보기   member 컴퓨터존 0 / 0 4117 2008-08-16
16  MySQL root 패스워드 분실시   member 컴퓨터존 0 / 0 4732 2008-08-14
15  MySQL 에서 랜덤(random)으로 레코드 읽어오기   member 높이뜬새 5 / 0 42434 2008-05-03
14  MySQL에서 오라클의 rownum 구현하기   member 컴퓨터존 1 / 0 7067 2008-05-02
13  MySQL 손상된 테이블 복구   member 높이뜬새 0 / 0 8314 2008-04-15
12  MySQL 백업 및 복구   member 높이뜬새 1 / 0 3947 2008-01-02
11  MySQL의 alter table 명령어 ( foreign key )   member 높이뜬새 4 / 1 25648 2007-12-31
10  MySQL의 alter table 명령어 모음   member 높이뜬새 11 / 1 40505 2007-12-23
9  MySQL 에서 날자표현 방법   member 투명한날 0 / 0 4206 2007-11-20
8  MySQL에서 원격 IP 접속 허용하기   member 높이뜬새 0 / 0 6921 2007-11-19
7  MySQL에서 사용자 권한 주기 (grant 명령어)   member 높이뜬새 5 / 1 51718 2007-11-14
6  MySQL에서 복합 프라이머리키(Composite Primary Key)만들기   member 높이뜬새 0 / 0 10742 2007-09-28
5  MySQL 5.0 버전의 새로운 기능   member 웹스톤 0 / 0 4067 2007-09-27
4  MySQL에서 DB스크립트 사용하기   member 높이뜬새 0 / 0 6992 2007-09-21
3  MySQL 계정생성하기   member 비가오니 0 / 0 4016 2007-09-15
2  실수로 삭제한 mysql DB 복구방법   member 비가오니 0 / 5 25214 2007-09-14
1  [해결방법] win2k + mysql 서비스시작 오류   member 컴퓨터존 2 / 0 10396 2007-08-20
write
button [1]