Today
Total
KoreanEnglishFrenchGermanJapaneseSpanishChinese (Simplified)
관리 메뉴

DB & AWS Knowledge

Replication 작동구조 본문

MySQL/Replication

Replication 작동구조

`O` 2021. 3. 4. 17:33
728x90
반응형

 

  • Replication 은 아래와 같은 방법으로 복제 및 동기화가 진행된다.

    • A (Master) 서버에서 클라이언트가 DB 변경을 수행한다.

    • DML, DDL 등의 수행 기록이 남는 Binary Log 에 해당 변경 내용이 같이 기록되게 되고 이 때, B (Slave) 서버에 해당 내용을 전달 하기 위해
      Dump Thread 가 B 서버로 해당 내용들을 전달 한다. (Replication 구성시 Binary Log 를 반드시 ON 으로 해야하는 이유)

    • A 서버와 동기화가 된 B 서버에서는 A 서버에서 온 DB변경 이력을 master info file 에서 확인 후, relay log 서버에 기입한다.
      그 후, B 서버의 SQL thread 가 relay log info file 을 참조하여 A 서버와 같이 변경이력 내용들을 기입 및 동기화 한다.
      B 서버의 Binary Log 파일은 A 서버와의 동기화가 끝난 후, 마지막 절차로 동기화 기입을 완료한다.

    • 실제 Replication 으로 구성된 Master 서버의 세션들을 확인해보면 위의 Dump Thread 는 Binlog Dump 로 항시 연결 중 임을 확인 할 수 있다.

 

    • Slave 서버내의 세션들을 확인 하면 각각 I/O thread (waiting for ~) 및 SQL thread (Slave has ~) 가 연결 중 임을 확인 할 수 있다.
    •  

  •  
    • master info file 을 열면 아래와 같이 동기화중인 binary log file 번호, job 번호, repl 동기화 시 사용하는 정보등을 확인 할 수 있다. (replication metadata)


    • relay log file 은 binary log 파일 같이 이진화된 파일로 구성되어 있다.

    • MySQL / MariaDB Replication 은 H.A 에서 MMM, MHA의 동기화 및 작동구조에도 응용된다.

2021.03.03 - [MySQL/H.A (High Availability)] - MMM 구성 방법

2021.03.04 - [MySQL/H.A (High Availability)] - MHA 구성 방법

반응형

'MySQL > Replication' 카테고리의 다른 글

MySQL / MariaDB Replication 구성 방법 (mysqldump)  (0) 2021.07.01
Comments