현재 mysql 5.1.45를 사용하여 마스터 마스터 (A와 B가 기본 마스터 인 경우) 복제 설정이 있습니다. 데이터는 15GB 이상입니다. 중복 키 오류가 발생할 때마다 sql_slave_skip_counter를 1로 설정하고 슬레이브를 다시 시작했습니다. 여러 달 동안이 작업이 완료되었습니다. 이제는 A와 B에 많은 차이가 있으며 엄청난 양의 데이터로 인해 불일치를 해결할 수 없습니다.라이브 데이터에 MySql 복제 문제가 발생했습니다.
이렇게하면 내가했던 서버 B를 다시 만들 수있는 옵션이 남았습니다. 나는 A에서 덤프를 가져다가 B로 복사했습니다. A는 생산품이며 다운 타임을 감당할 수는 없습니다. A의 2 진 로그 파일은 bin.001115 주위에 있으며, 여기서 덤프 후 2 진 로그는 bin.000012입니다.
두 서버 모두에서 마스터 로그 위치를 변경하는 방법에 대해이 단계를 수행 한 후에 혼동 스럽습니다. 마스터 로그 파일과 위치를 A (B의 쇼 마스터 상태에서)로 설정하고 마스터 로그 파일과 B의 위치 (A의 쇼 마스터 상태에서)를 설정했습니다.
올바른 접근법을 따른다면 누군가 말해 줄 수 있습니까?
이 후에도 중복 키 오류가 계속 표시됩니까? 이 중복 키 오류를 피할 수있는 방법이 있습니까? 아니면 원시 데이터 복제를 할 수있는 메커니즘이 있습니까?
답장을 보내 주셔서 감사합니다.
나에게 도움이되는 한 가지는 LVM 파티션에서 내 마스터를 실행하는 것입니다. 복제 서버를 다시 초기화하고 싶을 때, 'FLUSH TABLES WITH READ LOCK'을하고, mysql을 멈추고, 스냅 샷을 취하고, mysql을 다시 시작한다. 그런 다음 여유 시간에 스냅 샷의 파일을 복사 할 수 있습니다. –
그러나, 나는 주 마스터에서 mysql을 멈출 수 없다 :(. –