MySQL 동기화 데이터 복제 구현 방법

王林
풀어 주다: 2023-05-26 15:22:26
앞으로
1335명이 탐색했습니다.

MySQL의 복제 기능은 한 데이터베이스의 데이터를 다른 여러 데이터베이스로 동기화할 수 있습니다. 첫 번째 것을 일반적으로 마스터 데이터베이스(master)라고 하고, 두 번째 것을 슬레이브 데이터베이스(slave)라고 합니다. MySQL 복제 프로세스는 비동기식 방법을 사용하지만 지연이 매우 적고 몇 초 안에 동기화됩니다.

1. 동기 데이터 복제의 기본 원리

1. 메인 라이브러리에서 발생하는 데이터 변경 사항은 바이너리 로그 Binlog에 기록됩니다
2. 슬레이브 라이브러리의 IO 스레드는 메인 라이브러리의 Binlog를 자체 릴레이에 복사합니다. log Relay log
3 .슬레이브 라이브러리의 SQL 스레드는 릴레이 로그를 읽고 재생하여 데이터 복제를 구현합니다

MySQL 동기화 데이터 복제 구현 방법

MySQL 복제에는 명령문 수준, 행 수준, 혼합 수준의 세 가지 모드가 있습니다. 복제 수준이 다르면 마스터 서버가 다른 형태의 이진 로그 파일을 생성하게 됩니다.

2. 동기화 데이터 예

운영 체제: centos7
데이터베이스: mysql8
Master: 192.168.0.101
Slave: 192.168.0.102

1. 마스터-슬레이브 mysql 구성 파일

Host 구성 my.cnf를 수정합니다.

아아아아

슬레이브 머신 구성

[mysqld] # 服务器标识,每个服务器不能一样 server_id=101 # 开启日志文件 log_bin=binlog # 普通用户只能读 OFF是关闭状态 read_only=off # 超级用户只能读 OFF是关闭状态 super_read_only=off
로그인 후 복사

서비스 다시 시작

[mysqld] # 服务器标识 server_id=102 # 启用binlog日志,并指定文件名前缀 log_bin=binlog # 普通用户只能读 on是开启状态 read_only=on # 超级用户只能读 on是开启状态 super_read_only=on
로그인 후 복사

2. 호스트가 동기화 계정을 설정하고 마스터 데이터베이스 상태 정보를 확인합니다

데이터베이스에 로그인하여 계정을 생성합니다

systemctl restart mysqld
로그인 후 복사

마스터 데이터베이스 마스터 상태를 확인하고 가져옵니다. 로그 파일 이름 및 오프셋 정보

MySQL 동기화 데이터 복제 구현 방법

3. 슬레이브 동기화 구성

호스트의 바이너리 로그 작업을 복사합니다. (데이터의 일부는 메인 라이브러리의 마스터 상태를 확인하여 확인합니다.)
호스트의 동기화 계정 : source_user
Password: source_password
Port: source_port
로그 파일: source_log_file
Offset: source_log_pos

create user repl identified with mysql_native_password by 'repl123'; grant replication slave on *.* to repl; flush privileges;
로그인 후 복사

Slave가 동기화를 시작합니다

change replication source to source_host='192.168.0.101', source_user='repl', source_password='repl123', source_port=3306,source_log_file='binlog.000001', source_log_pos=154;
로그인 후 복사

4. 동기화 구성 효과를 확인하세요

호스트에서 슬레이브로부터의 연결이 있는지 확인하세요.

start replica;
로그인 후 복사

슬레이브 동기화 복제 상태 보기

show processlist;
로그인 후 복사

호스트에서 테이블에 데이터를 삽입하고 슬레이브의 해당 테이블에서 데이터를 확인합니다. 테스트 결과가 매우 좋습니다(생략)

위 내용은 MySQL 동기화 데이터 복제 구현 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!