AB 복제, 데이터 복제 기술이다 고 가용성 데이터베이스 myslq, 고성능 솔루션을 제공합니다.
AB는 모드를 복사 :
마스터 - 슬레이브, 여러에서 석사, 여러에서 두 주, 다중 마스터
복제 작동 :
AB 복제를 달성하기 위해, 전제 조건 로그인 진 마스터에서 설정하는 것입니다
기록 된 바이너리 로그 파일에 모든 마스터 데이터 업데이트 1) 먼저
슬레이브 처음부터 시작하는 2), 슬레이브는 바이너리 I / O 스레드의 요청을 마스터하기 로그 파일, 슬레이브는 위치 요청에서 포인트 누구에게 전화를 알고
슬레이브 전송 로그, 마스터의 I / O 요청은 슬레이브,이 지점의 해당 위치에서 시작됩니다 수신 3 후)
로그 쓰기에 노예를받은 후 4) 로컬 중계 로그로
. 5) 슬레이브 스레드 SQL 컨텐츠 중계 로그 원경 데이터베이스에서 해당 작용 및 마스터 슬레이브 일관된 데이터가 판독되고, 슬레이브 서버는 대기 상태에서 대기로 진입 마스터의 후속 업데이트
조작 원리를 복사 :
구성 지침 :
설치 구성
1. 준비
1. 닫기 방화벽
2. 닫기 SELinux를
구성 3. 고정 IP 주소
4. 냠 소스 구성
5.에게 수정 된 호스트 이름을
2. 실험 환경
마스터 서버 : 192.168.1.3 master.uplook.com # 마스터 데이터베이스
슬레이브 서버 : 192.168.1.4 slave.uplook.com # 라이브러리에서
3. 구성 프로세스
마스터 구성 (기본 라이브러리 서버)
1) 소프트웨어를 설치
이 참조 볼 수 있습니다 MySQL 데이터베이스 (설치되어 있지를 설치 https://www.cnblogs.com/pxblog/p/10529943.html를 )
2) 주요 라이브러리 서버의 구성 파일을 수정
정력 /etc/my.cnf에
[mysqld를]
로그 단 = 바이너리 로그 // 바이너리 열 로그
서버 ID = 1이 개 지정된 서비스 ID //
3) 서비스 시작
mysqld를 시작 systemctl
서비스가 청취인지 4) 확인
NETSTAT -tulnp | 그렙 3306
다음은 성공적인 시작을 나타내는 표시 (매개 변수는 다를 수 있습니다)
tcp6 0 0 ::: ::: 3306 * 11156 / mysqld를 청취
특정 지침 5) 권한이있는 사용자는 실현에 데이터를 복사하는 (문제를 볼 수 있습니다 https://www.cnblogs.com/pxblog/p/10721939.html )
MySQL의> 그랜트 슬레이브 복제, 복제 클라이언트 ON *을. * 사람 'repluser을 '@'192.168.1.4 '식별' 123456 ';
슬레이브 원격 로그인 인증 시험에서
MySQL의 -u repluser -h 192.168.1.3 -p123456
슬레이브 구성 (라이브러리에서 서버)
1) 소프트웨어 설치
MySQL 데이터베이스로 설치를 ()
2) 구성 파일을 수정
정력 /etc/my.cnf에
[mysqld를]
서버는 ID = 2 // 마스터 서버 및 그 불일치를 확인
3) 서비스 시작
mysqld를 시작 systemctl
서비스가 청취인지 4) 확인
NETSTAT -tulnp | 그렙 3306
다음은 성공적인 출현을 설명합니다 (매개 변수가 다를 수 있습니다)
tcp6 0 0 ::: ::: 3306 * 11156 / mysqld를 청취
5)보기로 마스터 (주 라이브러리 서버)에서 MySQL 데이터베이스에 로그인
MySQL의> 쇼 마스터 상태 \ G
쇼 다음
*************************** 1. 행 ******************** *******
파일 : binlog.000001의
위치 : 154
Binlog_Do_DB :
Binlog_Ignore_DB :
Executed_Gtid_Set :
세트 1 행 (0.00 초)
6) 슬레이브에 동기화 데이터, 당신은 (다음 매개 변수는 각 사람마다 다를 수 있습니다) 동기화를 시작하는에서 슬레이브 마스터 위치를 알려줄 필요
'192.168.1.3'MASTER_HOST = 행의 MySQL> 변경 마스터 master_port에는 = 3306, master_user = 'repluser' master_password = '123456' MASTER_LOG_FILE = 'binlog.000001'MASTER_LOG_POS = 154;
설명 :
MASTER_HOST : 데이터베이스 서버의 IP
master_port에는 : 데이터베이스 포트
master_user : 사용자
master_password : 비밀번호
MASTER_LOG_FILE : 파일 매개 변수 값은 상기 대응
MASTER_LOG_POS : 상기와 동일 위치 값
7) 상기 서버로부터 출발
MySQL의> 슬레이브를 시작합니다;
쿼리 확인, 0 행이 영향 (0.00 초)
8) 서버에서 상태 확인
MySQL의> 쇼 노예 상태 \ G;
Slave_IO_Running은 : 네 // IO 및 SQL 스레드가 '예 확인
Slave_SQL_Running : 예
테스트 : 마스터 슬레이브 동기화가 성공적
마스터 테이블 삽입 데이터를 생성하는
슬레이브 테이블에 존재하는지보기
마스터 - 슬레이브 동기화의 완료를 나타내는
질문 :
1. 질문에 문을 변경하는 경우
MySQL은> 슬레이브 STOP,
변경 명령문 문제 원인
1) 이상의 공백이있을 수 있습니다
잘못된 2) 키워드가
데이터 동기화가 마스터에 연결할 수 없습니다 2. 계정
1) 계정 암호가 잘못
2) 할 수 없습니다 텔넷
테이블에 대한 모든 추가 기능은 잠금 읽기
;> 읽기 잠금과 같은 높이 테이블
잠금 해제
> 잠금 해제 테이블;