>  기사  >  데이터 베이스  >  MySQL 동기화 데이터 복제 구현 방법

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

王林
王林앞으로
2023-05-26 15:22:261383검색

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으로 문의하시기 바랍니다. 삭제