WHEREIS

DB Table 복원 절차


데이타베이스 3개가 백업되어 있다고 가정.(test1, test2, test3)


복원할 테이블

---------------------------------------------------

1. H_B_notice

2. GiftOrder_List

---------------------------------------------------


* 해당 테이블이 어느 DB에 존재하는지 확인이 필요하다.


ㅇmysql -u root -p

  - Password 입력


ㅇuse test1;

  -test1 DB로 접근



ㅇshow tables;

+------------------------------------+

| Tables_in_test1             |

+------------------------------------+

| H_B_notice                |


--------- 생략 -----------------------



해당 테이블이 test1 DB에 존재하는 것을 확인 하였다.


그렇다면 test1 DB 백업파일을 복원하여 해당 테이블을 추출하면 된다.

(실사용중인 서버에 복원하기에 문제가 있으므로 대체 서버에다가 복원)


DB 복원하기(통째로)


mysql -u root -p test1 < test1.sql

                   DB명                 백업한 파일명.


백업한 test1 DB를 현재 있는 DB에 덮어 씌운다.


이렇게 하였는데 테이블 중 Lock 걸린 테이블이 있어서 진행이 안되는 경우

그럴땐 다음과 같은 옵션을 붙여주면 된다.

   --lock-tables=0


mysql -u root -p test1 --lock-tables=0 < test1.sql


하면 강제로 덮어씌우게 된다.


그럼 이제 해당 날짜로 test1 DB가 복원된 것이다.



다음으로는 DB에서 원하는 테이블 꺼내기



mysqldump -u root -p test1 H_B_notice > H_B_notice.sql

mysqldump -u root -p test1 GiftOrder_list  > GiftOrder_list.sql


다음과 같은 명령어로 쉽게 추출을 완료 하였다.




다시 원래 서버에 복원하기


마지막으로 축출한 테이블을 test1 DB에 있는 해당 테이블에 덮어 씌우는 작업이다.


mysql -u root -p test1 < H_B_notice.sql 

mysql -u root -p test1 < GiftOrder_list.sql





작업시 주의 할점은 >< 화살표 방향에 따라서 어떻게 되는건지(축출을 하느냐, 아니면 덮어씌워버리냐) 틀림으로 각별히 신경써야 한다.


작업 끝 




'Database > Mysql' 카테고리의 다른 글

mysql 쿼리 로그 남기기  (0) 2014.11.28
zabbix 호스트 정보 찾기  (0) 2014.11.13
MySQL 동기화 에러 발생시 처리 방법  (0) 2014.02.08

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band
loading