MySQL 슬레이브가 동시에 마스터가 될 수 있습니까?


17

2 개의 DB 서버 (Master & Slave)를 2 개의 새로운 DB 서버 (Master and Slave)로 마이그레이션하는 중입니다.

DB1-마스터 (프로덕션)

DB2-슬레이브 (프로덕션)

DB3-새로운 마스터

DB4-새 슬레이브

현재 복제본을 다음과 같이 설정했습니다.

DB1 -> DB2
DB3 -> DB4

프로덕션 데이터를 새 서버에 복제하려면 "데이지 체인"으로 설정하여 다음과 같이 표시하십시오.

DB1 -> DB2 -> DB3 -> DB4

이게 가능해? show master status;DB2 (프로덕션 슬레이브)에서 실행할 때 binlog 위치는 절대 바뀌지 않는 것 같습니다.

+ ------------------ + ---------- + -------------- + ---- -------------- +
| 파일 | 위치 | Binlog_Do_DB | Binlog_Ignore_DB |
+ ------------------ + ---------- + -------------- + ---- -------------- +
| mysql-bin.000020 | 98 | | |
+ ------------------ + ---------- + -------------- + ---- -------------- +

binlog 위치가 DB2에서 변경되지 않는 이유에 대해서는 약간 혼란 스럽습니다. 이상적으로는 DB3의 마스터가됩니다.

답변:


16

binlog on DB2이 슬레이브 업데이트를 업데이트하지 않았습니다. 복제를 데이지 체인으로 연결하려면 log-slave-updatesmy.conf에서 설정해야합니다 .

http://dev.mysql.com/doc/refman/5.1/en/replication-options-slave.html#option_mysqld_log-slave-updates


그런 다음 릴레이 로그와 binlog 파일에 각각 한 번씩 로그를 두 번 씁니다. 릴레이 로그를 사용하여 슬레이브에서 복제하지 않는 이유는 무엇입니까?
hpaknia


3

예-mysql 서버를 데이지 체인 방식으로 연결할 수 있으며 두 대 이상의 시스템으로 순환 복제 를 수행 할 수도 있습니다. 마스터 역할을하는 슬레이브에서도 binloging을 활성화해야합니다.


1
순환 복제는 매우 취약합니다. 대부분의 상황에서는 좋지 않습니다.
워너

@ Warner-이것은 훨씬 더 복잡한 복제 설정의 예일뿐입니다.
pQd

친구는 친구에게 데이지 체인 mysql 서버를 허용하지 않습니다.
sjas

@sjas는 특별한 이유가 없다면 체인을 깨는 잠재적 결과를 이해하지 않는 한.
pQd

미안하지만 여전히 아닙니다. 유연성은 항상 나중에 당신을 괴롭 힙니다.
sjas

0

네 가능합니다. 실제로 DB3를 빌드하려면 새로운 DB2 스냅 샷이 필요합니다. 이 시점에서 올바른 위치에 있으면 DB4보다 사용하거나 DB3의 다른 스냅 샷을 작성할 수 있습니다.

server_id각 서버마다 고유하게 설정하는 것을 잊지 마십시오 .

고성능 MySQL 은 고급 MySQL 관리를 참조하기위한 훌륭한 책입니다.


DB2는 현재 슬레이브 일 뿐이지 만 binlog 위치는 변경되지 않습니다. 이것이 정상인지 알고 있습니까?
mmattax

슬레이브 (DB2)는 마스터와 최신 상태이지만 binlog 위치는 변경되지 않습니다. 무엇을 확인해야합니까?
mmattax

예, DB1에서 데이터를 변경할 수 있으며 DB2에 복제되었지만 DB2의 binlog 위치는 동일하다는 것을 확인했습니다.
mmattax

내가 DB를 생각 @ 슬레이브 업데이트를 기록되지 않으며, 따라서 위치가 변경되지 않는 이유 : dev.mysql.com/doc/refman/5.1/en/...
mmattax

0

DB3를 새 슬레이브로 추가 한 다음 전환 준비가되었을 때이를 마스터로 승격시키는 것이 어떻습니까? 이렇게하면 여러 슬레이브를 사용하면 일시적으로 추가 이점을 얻을 수 있으며 다운 타임을 줄이거 나 없앨 수 있습니다.


그것이 바로 내가하는 일입니다.
mmattax
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.