본문 바로가기
카테고리 없음

[mysql] ibd 파일로 mysql 데이터 복구하기

by jongSuN 2023. 8. 8.

 

ibd 파일은 /var/lib/mysql/database-name

에 존재한다.

위의 경로에 존재하는 ibd 파일을 다른 곳에 mv or cp 해서 빼놓는다.

mysql 에 접속하여 해당 쿼리 실행

alter table testDB.test_table discard tablespace

그리고 ibd 파일을 백업해놓은 곳에서 /var/lib/mysql/database-name/ 
에 cp -a 로 넣는다.

이후 mysql 에서 아래의 쿼리문 실행

alter table testDB.test_table import tablespace;

 

그리고 select 를 하면 보일 것이다.

 

만약에 안된다면 아래의 쿼리문으로

show create table tableName

해당 테이블 생성 쿼리 기억 후

 

drop table tableName

위의 쿼리문으로 해당 테이블 날린 후 

 

깔끔한 상태에서 다시 테이블 생성 한 다음 위와 같은 방법 다시 진행하면 됨

 

진짜 이것도 안된다고 하면
다른 서버에서 mysql 설치 후 위와 같은 방법으로 데이터 받고 그 데이터를 백업하여

안되는 mysql 서버에서 해당 backup 파일을 dump 하면 됨 

댓글