백업과 복구

mariadb의 백업은 소규모 시스템(100GB) 이하의 경우 mysqldump로 해도 괜찮다고 생각한다. 이 방식은 오라클의 exp/imp와 유사하다. 스크립트 형태로 백업을 받고 수행하는 기능으로 속도가 빠르진 않다. 중대형 시스템(100GB 이상)인 경우에는 percona에서 제공하는 xtrabackup을 적극 추천한다. 간단하게 mysqldump 사용하는 법과 xtrabackup을 수행했던 내용들을 기술해본다.

mysqldump

oracle의 export / import와 같이 원하는 항목에 대해 백업이 가능하며, 복구시 script 반영으로 인해 데이터가 큰경우 복구시간이 길어질수도 있다. 주요 테이블이나 오브젝트 복구를 위한 백업시 유용하게 사용될수 있다.

1) full backup : 서버의 전체 데이터베이스 백업

mysqldump -uroot -p -A -S 소켓명 --no-data --skip-quote-names --compact > alldatabase.sql

2) 특정 데이터베이스 백업

mysqldump -uroot -p -S 소켓명 --no-data --skip-quote-names --compact test > testdb.sql

3) 특정 테이블 백업

mysqldump -uroot -p -S 소켓명 --no-data --skip-quote-names --compact test board > testdbboard.sql

4) 특정 데이타베이스의 테이블생성(schema) 정보만 백업하는 방법

mysqldump -uroot -p -S 소켓명 --no-data test > testdbschema.sql

5) function, procedure DDL 백업

mysqldump -uroot -pqhdks123@ -S /engn001/masvc01/mysql/mysqld.sock --routines  --no-create-info --no-data --no-create-db --skip-quote-names --skip-opt --compact test > test_routine.sql

7) mysqldump 백업 파일 restore

mysql -uroot -p --comments -S 소켓명 -A DB명 < backup.sql
cf) comments option을 주어야 routine내에 있는 주석이 작동된다.

xtrabackup

* Xtrabackup 주요 강점
1. Online상에서 DB 중지없이 InnoDB backups 생성
2. Incremental backup 지원
3. Stream compressed 백업 본을 다른 서버에 저장
4. 온라인상에서 DB간 TABLE 이동
5. 손쉽게 REPLICATION DB 구성지원
6. 서버 부하를 최소화하는 백업

작성중..

results matching ""

    No results matching ""