마스터-슬레이브 동기화는 binlog를 통해 수행됩니다. 슬레이브 라이브러리에는 두 개의 스레드가 있는데, 하나는 binlog 로그 수신을 담당하고 다른 하나는 로그 구문 분석 및 라이브러리에 데이터 쓰기를 담당합니다. 따라서 마스터-슬레이브 동기화에는 일반적으로 일정한 지연이 있습니다.
읽기-쓰기 잠금 문제의 경우 쓰기 잠금은 배타적이며 읽기 잠금은 여러 번 얻을 수 있습니다. Innodb에서 잠금은 테이블 잠금, 행 잠금, 간격 잠금으로 구분됩니다. 삽입 작업에 테이블 잠금이 필요하고 쿼리가 테이블의 행을 잠그면 당연히 기다려야 합니다.
오해의 소지가 있는 마스터-슬레이브 복제. 일반적으로 슬레이브 라이브러리는 복제 프로세스 이외의 쓰기 작업을 허용하지 않습니다. 물론, 수동으로 잠금을 제거해야 하는 경우 슬레이브 라이브러리의 쿼리 작업은 차단되지 않습니다. 메인 라이브러리는 슬레이브 라이브러리의 데이터를 잠긴 레코드와 동기화하고 슬레이브 라이브러리의 잠금을 기다리므로 슬레이브 라이브러리의 쓰기 작업은 관리자를 제외한 모든 작업을 엄격하게 제어해야 합니다.
마스터-슬레이브 동기화는 binlog를 통해 수행됩니다. 슬레이브 라이브러리에는 두 개의 스레드가 있는데, 하나는 binlog 로그 수신을 담당하고 다른 하나는 로그 구문 분석 및 라이브러리에 데이터 쓰기를 담당합니다. 따라서 마스터-슬레이브 동기화에는 일반적으로 일정한 지연이 있습니다.
읽기-쓰기 잠금 문제의 경우 쓰기 잠금은 배타적이며 읽기 잠금은 여러 번 얻을 수 있습니다. Innodb에서 잠금은 테이블 잠금, 행 잠금, 간격 잠금으로 구분됩니다. 삽입 작업에 테이블 잠금이 필요하고 쿼리가 테이블의 행을 잠그면 당연히 기다려야 합니다.
질문을 다시 한번 잘 생각해 보시기 바랍니다.
제가 이해한 질문에 따르면, 마스터 라이브러리가 슬레이브 라이브러리를 실시간으로 복제하고 있는 것이 확실합니까? 이 논리에는 문제가 있습니다.
오해의 소지가 있는 마스터-슬레이브 복제. 일반적으로 슬레이브 라이브러리는 복제 프로세스 이외의 쓰기 작업을 허용하지 않습니다. 물론, 수동으로 잠금을 제거해야 하는 경우 슬레이브 라이브러리의 쿼리 작업은 차단되지 않습니다. 메인 라이브러리는 슬레이브 라이브러리의 데이터를 잠긴 레코드와 동기화하고 슬레이브 라이브러리의 잠금을 기다리므로 슬레이브 라이브러리의 쓰기 작업은 관리자를 제외한 모든 작업을 엄격하게 제어해야 합니다.