이 기사에서는 Mysql 읽기-쓰기 분리가 무엇인지 설명합니다. 마스터-슬레이브 데이터베이스를 설정하는 방법은 무엇입니까? 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
읽기와 쓰기의 분리란 무엇인가요?
Mysql에는 추가, 삭제, 수정, 읽기의 네 가지 기능만 있습니다. 이렇게 하면 시스템 성능이 향상됩니다. 생각해 보세요. 판매는 물건만 파는 것으로 바뀌었고, 다른 사람들은 뒷문으로 이동합니다.
자주 고급스러워 보이는 것들도 만들기가 상당히 간단합니다.
다음은 초보자를 위한 내용입니다. 모두 매우 직관적인 조작입니다.
1. 구성:
mysql5.7과 같은 동일한 mysql 구성을 가진 두 대의 서버PS: 조건이 제한되어 있으면 하나만 사용하면 됩니다. 두 개의 mysql 서비스(3306, 3307과 같은 다른 포트)를 설치하지만 이는 효율성을 위한 원래 의도와 약간 반대됩니다
2. 코드:
2. 미들웨어 에이전트, 즉 코드를 변경하지 않고 미들웨어가 마스터-슬레이브 서버에 읽기 및 쓰기 요청을 보냅니다.
이제 마스터-슬레이브 서버를 구성하는 방법에 대해 이야기해 보겠습니다.
1. 포트 열기: 대부분의 호스트는 기본적으로 MySQL 포트 3306을 사용하며, 먼저 두 시스템의 보안 그룹 또는 방화벽에서 포트 3306을 열고 다시 시작합니다. 포트가 열려 있습니다. 이제 두 개의 서버를 구성합니다(호스트 1개와 Mysql 서버 2개에도 동일).
아래 기본 IP: 192.168.0.1, 슬레이브 IP: 192.168.0.2, 동기화 계정 사양 생성, 비밀번호 spec_password를 다음과 같이 가져옵니다. 예:
#1.Mysql配置改以下并重启服务(命令行里直接重启:service mysql restart) [mysqld] server-id=1 log-bin=master-bin log-bin-index=master-bin.index #2.命令行mysql执行或phpmyadmin里执行: GRANT REPLICATION SLAVE ON *.* TO 'spec'@'192.168.0.2' IDENTIFIED BY 'spec_password'; flush privileges;
#1.Mysql配置改以下并重启服务(命令行里直接重启:service mysql restart) [mysqld] server-id=2 relay-log-index=slave-bin.index relay-log=slave-bin #2.命令行mysql执行或phpmyadmin里执行: change master to master_host='192.168.0.1',master_port=3306,master_user='spec',master_password='spec_password',master_log_file='master-bin.000001',master_log_pos=0; start slave
Slave_IO_State=마스터가 이벤트를 보낼 때까지 기다리는 중이면 성공할 것입니다.
나머지 상태는 일반적으로 다음과 같은 이유 때문에 발생합니다.
1. 마스터와 슬레이브의 보안 그룹이나 방화벽이 3306 포트를 열지 않습니다
2. 마스터와 슬레이브 사이의 ping이 작동하지 않습니다.
이제부터 추가, 삭제 또는
2. 동기화 지연을 최소화하려면 슬레이브 서버의 대역폭이 마스터 서버 이상이어야 합니다. 작은 수도관인 경우 당연히 동기화가 한 단계 느려집니다.
위 내용은 Mysql 읽기-쓰기 분리란 무엇입니까? 마스터-슬레이브 데이터베이스를 설정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!