마스터 서버를 재부팅 한 후 MySQL 복제가 올바르게 재개되지 않는 이유는 무엇입니까?

PawelRoman

MySQL 마스터-슬레이브 복제가 있습니다. 최근에 mysql 마스터가 호스팅되는 서버가 mysql과 관련이없는 문제로 인해 재부팅되었습니다. 서버가 작동 한 후 슬레이브와의 동기화가 끊어 졌다는 사실을 전혀 알지 못했습니다 (마스터 로그 파일 이름이 변경됨). 마스터 데이터베이스 구조를 업데이트하고 많은 데이터를 변경했습니다. ~ 24 시간 후에 우리는 슬레이브에 새로운 데이터 구조와 새로운 데이터가 없다는 것을 깨달았습니다. 동기화가 끊어졌습니다.

나는 지금 그것을 고치려고 노력하고 있지만 궁금합니다. 마스터 서버가 중지되었을 때 슬레이브 인스턴스가 자동으로 남아있는 곳을 선택하지 못하는 이유가 무엇입니까? 슬레이브 인스턴스가 마스터 서버가 다시 시작될 때 일어나는 일을 완전히 추적하지 않는 방식으로 구현 된 이유는 무엇입니까?

빌 카윈

복제본이나 마스터가 다시 시작되면 복제본이 복구되어야합니다.

복제본에는 relay-log.info복제본이 처리 한 마지막 이벤트를 기록하는 라는 파일이 데이터 디렉토리에 있습니다. 대부분의 경우 이것은 잘 작동하며 복제본은 중단 된 지점에서 다시 시작할 수 있습니다.

그러나 여러 가지 문제가 발생할 수 있습니다.

  • 복제본이 충돌하면 relay-log.info가 손상 될 수 있습니다. 이러한 이유로 MySQL 5.6에서는 이제 파일 대신 충돌 방지 InnoDB 테이블에 동일한 정보를 저장하는 옵션을 제공합니다.

  • 복제본은 오랫동안 오프라인 상태 일 수 있습니다. 마스터가 복제본이 중지되었을 때 읽던 바이너리 로그 파일을 제거하면 복제본을 계속할 수 없습니다. 복제본은 연속 된 일련의 이벤트를 읽어야합니다. 그렇지 않으면 전체 데이터 복제를 보장 할 수 없습니다.

  • 마스터가 충돌하면 마스터가 바이너리 로그 파일을 손상시킬 수 있습니다. sync-binlog마스터 에서 구성 변수를 사용하면 마스터에서 성능이 저하된다는 점을 이해 하고이 위험을 줄일 수 있습니다 .

"왜 그런 방식으로 구현 되는가"에 관해서는, 크래시로부터 복구 할 수있는 복제 시스템을 구현하는 것이 어떻습니까? 그리고 그것이 얼마나 쉬운 지 확인하십시오. :-)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Blazor 서버 측의 @ref가 항목을 제거한 후 올바르게 렌더링되지 않는 이유는 무엇입니까?

분류에서Dev

재부팅 후 활성화되지 않은 서비스를 제거하는 방법은 무엇입니까?

분류에서Dev

시스템을 재부팅 한 후 기존 Nginx가 실행되지 않은 이유는 무엇입니까? 13 : Permission denied, chmod 777이지만?

분류에서Dev

Windows 서비스, 부팅 후 실패 후 재 시도가없는 이유는 무엇입니까?

분류에서Dev

재부팅 후 두 개의 활동 인스턴스가 생성되는 이유는 무엇입니까?

분류에서Dev

터미널에서 BIOS로 올바르게 재부팅하는 방법은 무엇입니까?

분류에서Dev

부 스트랩 클래스가 올바르게 해결되지 않는 이유는 무엇입니까?

분류에서Dev

텍스트 커서 좌표가 올바르게 업데이트되지 않는 이유는 무엇입니까?

분류에서Dev

텍스트 커서 좌표가 올바르게 업데이트되지 않는 이유는 무엇입니까?

분류에서Dev

Linux를 설치 한 후 "부팅 디스크가 감지되지 않았습니다"라는 메시지가 나타나는 이유는 무엇입니까?

분류에서Dev

javascript-이 캔버스 이미지가 올바르게 회전하지 않는 이유는 무엇입니까?

분류에서Dev

내 Arc 테마가 Ubuntu 18.04에서 올바르게 보이지 않는 이유는 무엇입니까?

분류에서Dev

재부팅 후 마우스 설정이 재설정되지 않도록하는 방법은 무엇입니까?

분류에서Dev

바인딩 해제가 호출 된 후 Android 서비스가 재설정되는 이유는 무엇입니까?

분류에서Dev

바인딩 해제가 호출 된 후 Android 서비스가 재설정되는 이유는 무엇입니까?

분류에서Dev

컴퓨터를 재부팅 한 후 스크립트를 계속하는 방법은 무엇입니까?

분류에서Dev

상태 후크가 올바르게 업데이트되지 않는 이유는 무엇입니까?

분류에서Dev

내 후크 상태가 올바르게 업데이트되지 않는 이유는 무엇입니까?

분류에서Dev

재부팅 후 시스템이 몇 시간 동안 날짜를 잊어 버린 이유는 무엇입니까?

분류에서Dev

explorer.exe가 충돌 한 후 원격 데스크톱 연결에서 컴퓨터를 재부팅하는 방법은 무엇입니까?

분류에서Dev

Oncreate를 호출 한 후 매번 내 카운터가 재설정되는 이유는 무엇입니까?

분류에서Dev

컴퓨터를 다시 시작한 후 홈 라우터를 재부팅 할 때까지 인터넷 연결이 설정되지 않는 이유는 무엇입니까?

분류에서Dev

MySQL 데이터베이스 시간대가 올바르게 설정되지 않은 이유는 무엇입니까?

분류에서Dev

마우스를 Kendosparkline 위로 가져 가면 툴팁이 올바르게 표시되지 않는 이유는 무엇입니까?

분류에서Dev

getline을 사용한 후 cin이 버퍼 데이터를 가져 오지 않는 이유는 무엇입니까?

분류에서Dev

재배치 가능한 virtualenv에 PySide를 올바르게 설치하는 방법은 무엇입니까?

분류에서Dev

간단한 Ongesture 리스너를 가져오고 메서드를 올바르게 재정의하는 방법은 무엇입니까?

분류에서Dev

GRUB 2에서 해당 명령 줄에서 재부팅하지 않는 한 복구 명령 줄을 제공하는 이유는 무엇입니까?

분류에서Dev

ControlWrapper의 상태를 변경 한 후 테이블에서 selectedRow 데이터를 올바르게 가져 오는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Blazor 서버 측의 @ref가 항목을 제거한 후 올바르게 렌더링되지 않는 이유는 무엇입니까?

  2. 2

    재부팅 후 활성화되지 않은 서비스를 제거하는 방법은 무엇입니까?

  3. 3

    시스템을 재부팅 한 후 기존 Nginx가 실행되지 않은 이유는 무엇입니까? 13 : Permission denied, chmod 777이지만?

  4. 4

    Windows 서비스, 부팅 후 실패 후 재 시도가없는 이유는 무엇입니까?

  5. 5

    재부팅 후 두 개의 활동 인스턴스가 생성되는 이유는 무엇입니까?

  6. 6

    터미널에서 BIOS로 올바르게 재부팅하는 방법은 무엇입니까?

  7. 7

    부 스트랩 클래스가 올바르게 해결되지 않는 이유는 무엇입니까?

  8. 8

    텍스트 커서 좌표가 올바르게 업데이트되지 않는 이유는 무엇입니까?

  9. 9

    텍스트 커서 좌표가 올바르게 업데이트되지 않는 이유는 무엇입니까?

  10. 10

    Linux를 설치 한 후 "부팅 디스크가 감지되지 않았습니다"라는 메시지가 나타나는 이유는 무엇입니까?

  11. 11

    javascript-이 캔버스 이미지가 올바르게 회전하지 않는 이유는 무엇입니까?

  12. 12

    내 Arc 테마가 Ubuntu 18.04에서 올바르게 보이지 않는 이유는 무엇입니까?

  13. 13

    재부팅 후 마우스 설정이 재설정되지 않도록하는 방법은 무엇입니까?

  14. 14

    바인딩 해제가 호출 된 후 Android 서비스가 재설정되는 이유는 무엇입니까?

  15. 15

    바인딩 해제가 호출 된 후 Android 서비스가 재설정되는 이유는 무엇입니까?

  16. 16

    컴퓨터를 재부팅 한 후 스크립트를 계속하는 방법은 무엇입니까?

  17. 17

    상태 후크가 올바르게 업데이트되지 않는 이유는 무엇입니까?

  18. 18

    내 후크 상태가 올바르게 업데이트되지 않는 이유는 무엇입니까?

  19. 19

    재부팅 후 시스템이 몇 시간 동안 날짜를 잊어 버린 이유는 무엇입니까?

  20. 20

    explorer.exe가 충돌 한 후 원격 데스크톱 연결에서 컴퓨터를 재부팅하는 방법은 무엇입니까?

  21. 21

    Oncreate를 호출 한 후 매번 내 카운터가 재설정되는 이유는 무엇입니까?

  22. 22

    컴퓨터를 다시 시작한 후 홈 라우터를 재부팅 할 때까지 인터넷 연결이 설정되지 않는 이유는 무엇입니까?

  23. 23

    MySQL 데이터베이스 시간대가 올바르게 설정되지 않은 이유는 무엇입니까?

  24. 24

    마우스를 Kendosparkline 위로 가져 가면 툴팁이 올바르게 표시되지 않는 이유는 무엇입니까?

  25. 25

    getline을 사용한 후 cin이 버퍼 데이터를 가져 오지 않는 이유는 무엇입니까?

  26. 26

    재배치 가능한 virtualenv에 PySide를 올바르게 설치하는 방법은 무엇입니까?

  27. 27

    간단한 Ongesture 리스너를 가져오고 메서드를 올바르게 재정의하는 방법은 무엇입니까?

  28. 28

    GRUB 2에서 해당 명령 줄에서 재부팅하지 않는 한 복구 명령 줄을 제공하는 이유는 무엇입니까?

  29. 29

    ControlWrapper의 상태를 변경 한 후 테이블에서 selectedRow 데이터를 올바르게 가져 오는 방법은 무엇입니까?

뜨겁다태그

보관