논리 백업 — mysqldump
mysqldump는 데이터베이스 구조와 데이터를 SQL 문장 형태로 추출하는 논리 백업 도구입니다. 사람이 읽고 편집할 수 있는 형태로 저장됩니다.
mysqldump -u root -p --single-transaction mydb > backup.sql
물리 백업
물리 백업은 DB가 저장된 디렉토리와 파일을 있는 그대로 복사하는 방식입니다. 변환 과정이 없어 논리 백업보다 훨씬 빠릅니다.
장단점 비교
| 논리 백업(mysqldump) | 물리 백업 | |
|---|---|---|
| 속도 | 느림 (대용량 시 특히) | 빠름 |
| 편집 가능 | 가능 (SQL 텍스트) | 불가능 |
| 다른 버전/아키텍처 이식 | 가능 | 제약 있음 |
| 대용량 DB 적합성 | 낮음 | 높음 |
왜 대용량에는 mysqldump가 불리한가
mysqldump는 복구 시 SQL 문장을 하나씩 재실행해야 하므로, 인덱스 생성 등으로 인한 디스크 I/O가 커져 대용량 데이터에서는 복구 시간이 급격히 늘어납니다.
선택 기준
데이터 양이 적고 구조 변경이나 부분 복구가 필요하면 mysqldump, 대용량이라 빠른 복구가 중요하면 물리 백업을 선택하는 것이 일반적입니다.