Xtrabackup 을 사용하는 방법에 대해 테스트 해 보았다.
마음도 심숭생숭하여 빨리 진행될 일을 너무 느긋하게 진행 되었다.
InnoDB 를 이용한 백업 으로써 Incremental backup 도 함께 해 보았다.
Incremental 에 대한 개념은 Oracle Rman 백업과 같은 개념으로 생각해도 될 것 같다.
Full Backup 의 경우 데이터의 양이 증가할 수록 시간도 오래 걸린다.
이에 따라, 변경된 데이터만 백업을 함으로서 백업의 시간을 획기적으로 단축할 수 있다.
이후 복구 시에는 Full backup 으로 복구 후 나머지 변경된 데이터만 Incremental 백업을 가지고 적용함으로써
무손실로 복구를 할 수 있다.
물론 이 개념들은 모두 Oracle Rman 백업 / 복구 때의 지식으로 Xtrabackup 의 경우 다를 수도 있다.
추가적으로 MySQL LSN 이 있는데
* lsn 이 log sequence number 의 약자로써 전체 DB의 버전 정보를 뜻함
- 변경 사항이 발생할 때마다 번호가 증가하여 채번
* Oracle로 따져보면 SCN 와 비슷
(DB Link를 많이 사용하다 보면 SCN 관련하여 full 이 차서 DB down 되는 현상이 있엇던 것이 기억난다...11g 등에서 어느정도 해결되었다고는 했는데..)
1. Full Backup
* innobackupex 명령어를 이용하여 user 와 passwd 를 입력하여 진행
* Port를 따로 지정한 경우나, 멀티로 띄우는 경우 --socket 옵션을 지정하여 명시
* /home/backup/game/ 으로 어느 곳에 백업을 할 것인지 명시를 하게 되면, 자동으로 '2016-09-09_16-58-17' 처럼 날짜 시간으로 디렉토리 자동생성
* config 파일을 지정시 --defaults-file=MY.CNF 처럼 명시 가능
[root@DBTEST02:/root]# innobackupex --user=DB유저명 --password=비밀번호--socket=/tmp/mysql_8003.sock /home/backup/game/
....
160909 16:58:19 Executing UNLOCK TABLES
160909 16:58:19 All tables unlocked
160909 16:58:19 Backup created in directory '/home/backup/game/2016-09-09_16-58-17'
MySQL binlog position: filename 'Bin_Log.000049', position '7396794'
160909 16:58:19 [00] Writing backup-my.cnf
160909 16:58:19 [00] ...done
160909 16:58:19 [00] Writing xtrabackup_info
160909 16:58:19 [00] ...done
xtrabackup: Transaction log of lsn (1600627) to (1600627) was copied.
160909 16:58:19 completed OK!
2. Preparing a full backup with innobackupex
- Incremental backup에 대한 개념은 초반에 살짝 언급한 바와 같이 백업 이후의 변경된 내용들에 대해서만 백업을 진행
- 기준은 LSN 의 정보를 보고 추적하여 진행
* --incremental-basedier 의 경우 마지막으로 full backup 한 위치에 대한 데이터 내용을 뜻하는 것으로, 해당 내용들을 확인 후 incremental backup을 진행하기 위한 기본 정보이다.
* 풀백업이든 증분 백업이든 최종 위치를 작성 후에 진행해야지만, 증분백업을 제대로 진행할 수 있다.
* innobackupex --incremental --user=DB유저ID --password=DB유저 패스워드 --socket=/tmp/mysql_8003.sock /home/backup/game/ --incremental-basedir=/home/backup/game/2016-09-12_10-59-37/
해당 문서는 아래 블로그를 참고로 하였습니다.
http://ani2life.com/wp/?p=1290
'MySQL > Xtrabackup' 카테고리의 다른 글
[Xtrabackup] innobackupex Full backup 복구 (MySQL Clone DB???) (2) | 2016.09.20 |
---|---|
[Xtrabackup] Backup 방법2 (추가 full backup) (0) | 2016.09.20 |
[XtraBackup] Precona XtraBackup 설치 on CentOS 5.5 & MySQL 5.6.32 (0) | 2016.09.08 |