cat 덤프파일 | grep 데이터 베이스 명 > aaa.txt
-> 이 부분은 복구 하고자 하는 데이터 베이스 다음에 어떤 데이터 베이스가 있는지 검색 하기 위한 단계
왜 해야 되는지는 아래에서 계속...^_________^
vi aaa.txt
-> 복구 하고자 하는 데이터 베이스 (USE `데이터 베이스`)찾고 그 다음 어떤 데이터 베이스가 오는지 확인 한다.
-> 전체 덤프 파일에서 내가 복구 하고자 하는 DB 이름은 aaa고 aaa 라는 DB 다음에 bbb라는 디비가 있다고 가정하고
aaa라는 DB 복구 하는 방법을 설명 하겠다.
grep -n 'USE `aaa`' 덤프파일.sql
20592:USE `aaa`;
-> 해당 덤프파일에서 내가 복구 하고자 하는 데이터 베이스는 20592번째 줄에서 시작한다.
grep -n 'USE `bbb`' 덤프파일.sql
22147:USE `bbb`;
-> aaa라는 데이터 베이스 다음에 bbb라는 데이터 베이스는 22147번째 줄에서 시작 한다.
bbb라는 DB 시작 부분에서 aaa라는 DB 시작 부분을 빼면 aaa라는 DB 내용을 알 수 있다.
grep 'USE `aaa`' -A 1555 덤프파일.sql > aaa_DB.sql
-> 덤프파일.sql 이라는 파일에서 aaa라는 데이터 베이스를 검색 하고 해당 라인 이후부터 1555줄까지를 aaa_DB.sql이라는
파일에 저장한다.
-> 이렇게 하면 aaa라는 DB 시작부터 bbb라는 DB가 시작 하는 사이의 데이터를 찾을 수 있다.
mysql -u root -p aaa < aaa_DB.sql
-> 이렇게 복구 하면 된다.
-> 아니면 다른 DB를 만들어서 복구 하고 원본 DB랑 비교해서 삭제되거나 깨진 부분만 복구도 가능하다.
* DB 백업은 테이블 단위로 하자!!!!!!!
- Posted by Woo Seung -
'[IT 알아보기] > IT 소식' 카테고리의 다른 글
Mysql Change Master To 사용하기 (0) | 2011.05.03 |
---|---|
서버 사용자 패스워드 일괄 변경 (0) | 2011.05.03 |
도스(command)창에서 원격세션 끊기 (0) | 2011.05.03 |
mysql character_set 변경 (0) | 2011.05.03 |
IP forward 방법 (0) | 2011.05.03 |