마스터-슬레이브 MySQL을 구축하는 방법에는 여러 가지가 있으며, 전통적인 mysqldump 방법은 많은 사람들이 선택하는 방법 중 하나입니다. 그러나 대규모 데이터베이스의 경우 이 방법은 이상적인 선택이 아닙니다. Xtrabackup을 사용하면 mysql 마스터-슬레이브 아키텍처를 빠르고 쉽게 구축하거나 복구할 수 있습니다. 본 글에서는 기존 슬레이브 라이브러리를 기반으로 마스터-슬레이브, 즉 원본 마스터 라이브러리의 새로운 슬레이브 라이브러리를 빠르게 구축하는 방법을 설명합니다. 이 방법의 장점은 메인 데이터베이스의 백업 기간과 관련된 성능 압박이 필요 없다는 것입니다. 구성 과정에서 마스터-슬레이브 구성을 가속화하기 위해 빠른 스트리밍 백업 방법이 사용되었으며 스트리밍 백업을 가속화하기 위한 여러 매개 변수가 참조용으로 설명되었습니다.
스트리밍 백업에 대한 자세한 내용은 Xtrabackup 스트리밍 백업 및 복구
1. 슬레이브 데이터베이스 백업
###원격 백업 시에는 동등성 검증을 사용하므로 반드시 해당 구성을 먼저 완료하십시오. 여기서는 mysql 사용자
$ innobackupex --user=root --password=xxx --slave-info --safe-slave-backup \--compress-threads=3 --parallel=3 --stream=xbstream \--compress /log | ssh -p50021 mysql@172.16.16.10 "xbstream -x -C /log/recover"
### 백업 중에 safe-slave-backup 매개변수가 사용됩니다. SQL 스레드가 중지되었다가 완료 후 시작되는 것을 볼 수 있습니다$ mysql -uroot -p -e "show slave status \G"|egrep 'Slave_IO_Running|Slave_SQL_Running'
Enter password:
Slave_IO_Running: Yes
Slave_SQL_Running: No
Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it
###my.cnf 파일을 새 슬레이브 라이브러리에 복사 2 . 마스터 라이브러리는 새로운 슬레이브 라이브러리 복사 계정을 부여합니다
$ scp -P50021 /etc/my.cnf mysql@172.16.16.10:/log/recover
3. 새로운 슬레이브 라이브러리 준비 >
###다운로드 주소
http://www.php.cn/
아아앙
4 슬레이브 구성 파일 my.cnf 준비
### 필요에 따라 해당 매개변수를 수정합니다. master@MySQL> grant replication slave,replication client on *.* to repl@'172.16.%.%' identified by 'repl';
5. 슬레이브 라이브러리를 시작하고 Change Master를 수정합니다# chown -R mysql :mysql /log/recover# /app/soft /mysql/bin/mysqld_safe --defaults-file=/log/recover/my.cnf &# tar -xvf qpress-11-linux-x64.tar qpress# cp qpress /usr/bin/
$ innobackupex --decompress /log/recover
###解压$ innobackupex --apply-log --use-memory=2G /log/recover
###prepare备份
mysql> ; 슬레이브 시작;쿼리 확인, 0행이 영향을 받음(0.02초)
6. 슬레이브 데이터베이스 백업 기준 관련 매개변수 및 가속 스트림 백업 매개변수
skip-slave-start datadir = /log/recover port = 3307 server_id = 24 socket = /tmp/mysql3307.sock pid-file=/log/recover/mysql3307.pid log_error=/log/recover/recover.err
경고: 꼭 확인하세요 슬레이브는 백업용 소스로 사용하기 전에 마스터의 실제 복제본입니다.
슬레이브를 검증하는 좋은 도구는 pt-table-checksum입니다.
--압축
>
--compress-threads
This option specifies the number of worker threads that will be used for parallel compression. It is passed directly to the xtrabackup child process. Try 'xtrabackup --help' for more details.
--decompress
Decompresses all files with the .qp extension in a backup previously made with the --compress option.
--parallel=NUMBER-OF-THREADS
On backup, this option specifies the number of threads the xtrabackup child process should use to back up files concurrently. The option accepts an integer argument. It is passed directly to xtrabackup's --parallel option. See the xtrabackup documentation for details. On --decrypt or --decompress it specifies the number of parallel forks that should be used to process the backup files.
以上就是使用innobackupex基于从库搭建mysql主从架构的内容,更多相关内容请关注PHP中文网(www.php.cn)!