사용 ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐
MySQL에 내장된 복제 기능은 대규모 고성능 애플리케이션을 구축하기 위한 기반입니다. 수억 개의 MySQL 데이터를 여러 시스템에 배포합니다. 이 배포 메커니즘은 특정 MySQL 호스트의 데이터를 다른 호스트(슬레이브)에 복사하고 다시 실행함으로써 달성됩니다. 복제 중에 하나의 서버는 서버 역할을 하고 하나 이상의 다른 서버는 슬레이브 역할을 합니다. 마스터는 바이너리 로그에 업데이트를 기록하고 파일 인덱스를 유지하여 로그 회전을 추적합니다. 이러한 로그는 슬레이브 서버로 전송된 업데이트를 기록합니다. 슬레이브가 마스터에 연결되면 슬레이브가 로그에서 읽은 마지막 성공적인 업데이트 위치를 마스터에 알리고, 슬레이브는 그 이후 발생한 모든 업데이트를 수신한 다음 차단합니다. 마스터는 새 업데이트를 알립니다. 복제할 때 복제 테이블에 대한 모든 업데이트는 기본 서버에서 이루어져야 합니다. 그렇지 않으면 마스터 서버의 테이블에 대한 사용자 업데이트와 서버의 테이블 업데이트 사이에 충돌이 발생하지 않도록 주의해야 합니다
1. 마스터 서버 수정
server_id=1 #指定MySQL的id log-bin=mysql-bin #开启二进制日志文件
GRANT REPLICATION SLAVE ON *.* to 'replication'@'%' identified by 'Abc123...';
3. 슬레이브 서버 수정
server_id=2 log-bin=mysql-bin binlog_do_db=db_test#表示要同步的数据库
4. MySQL을 다시 시작
service mysqld restart
5. 마스터 서버 상태 확인
show master status
여기에 일부 정보를 기록해야 하며, 이는 슬레이브 서버 구성 시 사용됩니다. 6. 슬레이브 서버 구성(마스터 서버에 연결)
change master to master_host='192.168.74.129',master_user='replication',master_password='Abc123...',master_log_file='mysql-bin.000001',master_log_pos=2041;
start slave
를 실행합니다. 중지 명령은 다음과 같습니다. 구성에 실패할 경우 MySQL 로그 파일에서 실패 정보를 확인하거나, 위 명령어를 통해 간단한 오류 메시지를 확인할 수 있습니다.
방금 마스터-슬레이브 서버를 구성했을 때 발생한 오류입니다. 주된 이유는 MySQL 서버의 UUID가 마스터 서버에서 복사되었기 때문입니다. /var/lib/mysql/auto.cnf로 이동하여 수정하세요. #마스터-슬레이브 결과 확인 현재 상태: 아래에 새 테이블을 생성하여 동기화 가능 여부 확인:#슬레이브 서버 보기
동기화가 완료된 것을 확인할 수 있습니다
더 많은 MySQL 관련 기술 기사를 보려면 MySQL Tutorial 칼럼을 방문하여 알아보세요!
위 내용은 MySQL은 마스터-슬레이브 복제 기능을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!