1. 서버 계획
마스터:192.168.0.152
슬레이브: 192.168.0.153 192.168.0.154
모니터링 서버: 192.168.0.154
참고: True 프로덕션 환경에서는 복제 데이터베이스를 모니터링하기 위해 별도의 서버를 갖는 것이 가장 좋습니다. 여기서는 Salve 서버를 모니터링 서버로 직접 사용하겠습니다.
MySQL 유틸리티 및 MySQL 커넥터를 다운로드하고
192.168.0.154에 설치합니다. (모니터링 서버) 서버에서 다음 명령을 실행하여 다운로드한 MySQL 유틸리티 및 MySQL 커넥터
yum install mysql-connector-python-2.1.4-1.el6.x86_64.rpm mysql-utilities-1.6.4-1.el6.noarch.rpm
Master:192.168). 0.152
슬레이브: 192.168.0.153 192.168.0.154
모니터링 서버: 192.168.0.154
블로그 포스팅 "MySQL - MS 마스터-슬레이브 복제(읽기-쓰기 분리) 구현" 및 "MySQL - —MSS 마스터-슬레이브 복제(읽기-쓰기 분리) 구현》
, "MySQL - BinLog 복제를 GTID 복제로 업그레이드하는 4단계".
모니터링 시스템을 승인합니다.
mysql>grant create,insert ,drop, select, super, replication slave, reload on *.* to 'replm'@'192.168.0.154' identified by password 'replm' with grant option;
192.168.0.152, 192.16 8. 0.153과 192.168.0.154는 각각
mysql>show grants for replm@192.168.0.154;
를 실행하여 인증 성공 여부를 확인합니다.
참고: 별도의 서버에서 복제를 모니터링하는 경우 복제에 관련된 마스터 및 슬레이브 서버에서만 인증 작업이 수행됩니다. 인증 대상 IP는 모니터링 서버 IP입니다
다음은 복제 모니터링 및 슬레이브 서버 구성 시 my.cnf 파일의 핵심 구성입니다. Failover
[mysqld] log-bin=/data/mysql3306log/mysql-bin binlog-format=mixed server-id = 001 sync_binlog=1 gtid-mode=on enforce-gtid-consistency log-slave-updates report-host=192.168.0.154 master-info-repository=TABLE relay-log-info-repository=TABLE
구성을 수정한 후 mysql 서버를 다시 시작하면 mysql 서버는 바이너리 로그에 저장된 master.info와 Relay-log.info 두 파일을 데이터베이스에 저장합니다. execute use mysql;show tables; mysql 데이터베이스에slave_master_info와slave_relay_log_info라는 두 개의 테이블이 새로 생성된 것을 볼 수 있습니다.
192.168.0.154(모니터링 서버)에서 Failover 기능을
#mysqlfailover --master=replm:replm@192.168.0.152 --discover-slaves-login=replm:replm
실행합니다.
참고: 마스터 서버가 중단되면 mysqlfailover는 자동으로 슬레이브 서버 중 하나를 마스터로 선택하고 다른 슬레이브는 새 마스터 서버에 해당합니다.
참고: 마스터가 중단되면 mysqlfailover는 자동으로 다른 슬레이브 중에서 하나의 서버를 마스터로 선택합니다. 원래 마스터 서버를 수동으로 다시 시작하면 mysqlfailover는 현재 중단된 원래 mysql 서버가 다시 시작되었는지 자동으로 찾을 수 없습니다. 원래 중단된 mysql 서버를 수동으로 다시 시작하고 이를 슬레이브 서버로 복제에 추가해야 합니다.
위 내용은 MySQL-Replication 모니터링 및 자동 장애 조치에 대한 상세 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!