- 1차 서버는 정상, 2차 서버는 추가로 구성한 서버라고 가정하고..
- 전체서버대상 - extra backup 패키지 설치 - https://www.percona.com/downloads/Percona-XtraBackup-2.4/LATEST/
- 1차 서버 - 백업한 데이터 저장용 디렉토리 생성
- 1차 서버 - Full backup으로 백업 수행시
$ innobackupex ~-~-defaults-file=/etc/my.cnf ~-~-user root ~-~-password 'root암호' /tmp/db_backup/
\\....
innobackupex: MySQL binlog position: filename 'mysql-bin.000100', position 001
innobackupex: completed OK!
# /tmp/db_backup/ 하위로 년-월-일-시-분-초 디렉토리 생성됨
# binlog 파일정보 확인 및 position정보를 가지고 있어야 함.
- 백업된 데이터를 2차서버로 복사
$ scp -r /tmp/db_backup csadmin@1.2.3.4:/tmp/
- 2차서버 - mysql 종료
$ /etc/init.d/mysqld stop
- 2서버 - DB 복원시 데이터 경로에 있는 파일 삭제
$ rm -rf /home/data/mysql/
- 2차 서버 - DB로그 복원
$ innobackupex ~-~-apply-log /home/mysqlxtra/2021-08-07_01-00-03
- 2차 서버 - DB데이터 복원
$ innobackupex ~-~-copy-back /home/mysqlxtra/2021-08-07_01-00-03
- 리플리케이션 재구성 (3-a과정에서 확인된 binlog 정보 기재하면 됨)
mysql> stop slave;
mysql> change master to master_log_file='mysql-bin.000100',master_log_pos=001;
mysql> start slave;
mysql> show slave status \G;
...