Contents

Database
2019.11.22 04:36

[mysql] MySQL 백업 및 복구

조회 수 821 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* 이 글에서는 mysqldump를 이용한 논리적 백업 과 복원을 위한 내용을 위주로 정리한다. (물리적 백업은 전문 DBA에게 부탁하는게 정신건강에 좋을 것 같다.)

백업
MySQL 데이터를 백업하는 방법은 크게 물리적 백업과 논리적 백업이 있다. 

1. 물리적 백업
 - 물리적 백업은 MySQL DB의 물리 파일을 백업하는 것이다.
 - 장점
  + 물리적 백업은 속도가 빠르며 작업이 단순하다.
 - 단점
  + InnoDB의 물리적 파일은 상응하는 논리 백업에 비해 상당히 크다.
  + 데이터 복구시에 문제가 발생할 소지가 있으면 문제발생시 원인파악 및 해결이 어렵다.

2. 논리적 백업
 - 논리적 백업은 mysqldump 혹은 기타 툴을 이용해서 SQL문을 갖는 텍스트 파일을 생성하는 것이다.
 - 장점
  + 논리적 백업은 데이터를 검토할 수 있다.
  + 복원작업이 수월하며, 물리적 백업에 비해 복원시 데이터 손상을 막아주며, 문제 발생시 원인 파악및 해결하기가 수월하다. 
 - 단점
  + 백업/복원시 시스템 리소스를 더 많이 소모한다. (물리적 백업은 파일 copy만 하면 되니까!!!)
  + 부동 소수점 데이터의 백업&복원시 데이터 정확성을 잃게 될 수 있다.

3. mysqldump 사용법
 $ mysqldump -u[userId] -p[password] --all-databases > dump.sql  // 서버에 있는 모든 것의 논리 백업 생성
 $ mysqldump -u[userId] -p[password] --databases [DB명] > dump.sql // 특정 데이터베이스만의 논리 백업 생성
 $ mysqldump -u[userId] -p[password] [DB명] [테이블명]

 
- 기타 옵션
   -A, --all-databases : 모든 DB 덤프
   -B, --databases : 특정 DB를 덤프

   --opt : 버퍼링을 비확성화 하고, 많은 데이터를 덤프에 있는 소량의 SQL구문에 기록해 더효율적으로 동작하다록 한다.
   --allow-keywords, --quote-names : 예약어를 사용하는 테이블을 덤프하고 복원할 수 있게 한다.
   --lock-alltables : 전역적으로 일관된 백업을 만들도록 "FLUSH TABLES WITH READ LOCK"을 사용한다. 
   --tab : "SELECT INTO OUTFILE"로 파일을 덤프하여, 덤프 및 복원 속도가 매우 빠르다.
   -d, --no-data :  데이터는 제외하고 스키마만 덤프
   -t, --no-create-info : 스키마는 제외하고 

4. dump 파일 복원 방법
 - mysql -u [userId] -p [password] [DB명] < dump.sql
 - mysql 접속한 후 아래의 명령 실행
     mysql> source dump.sql

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
81 Develop 논문에 들어갈 툴바 테스트 해볼 것.. secret hooni 2013.04.23 8013
80 Develop 다양한 방법으로 아주 큰 수(Big Number) 계산.. ㅋㅋ hooni 2013.04.23 8374
79 Develop 다운 받아서 테스트 해볼것.. hooni 2013.04.23 9141
78 Develop 도메인 관련 솔루션 분석할 거.. ㅋㄷ file hooni 2013.04.23 6981
77 Algorithm 디피헬만(Diffie-Hellman) 초간단 개념.. hooni 2013.04.23 81019
76 System/OS 라우팅 경로 결정 영향 요소 ㅋㅋ file hooni 2013.04.23 15850
75 Develop 라이브러리에 대한 설명 (static & dynamic library) hooni 2013.04.23 6944
74 Algorithm 러시아 페인트공 알고리즘에 대해.. hooni 2013.04.23 22895
73 Develop 레고 NXT 마인드스톰 밸런싱 로봇 ㅎㅎ file hooni 2013.04.23 57714
72 Develop 레고 마인드스톰 NXT 수도쿠, 큐브 소스코드.. 20 file hooni 2013.04.23 81418
71 Develop 리팩토링 계획안 file hooni 2017.05.15 748
70 Develop 링크들 보고 지울 내용 secret hooni 2019.11.21 0
Board Pagination Prev 1 ... 87 88 89 90 91 92 93 94 95 96 ... 98 Next
/ 98