[Database] Database Replication

inyong_pang·2020년 8월 17일
1

Database

목록 보기
4/15

Database Replication

  • 두 개 이상의 DBMS 시스템을 Master / Slave 로 나눠서 동일한 데이터를 저장하는 방식

기존방식

단순한 Database를 구성할때 하나의 어플리케이션 서버와 하나의 Database를 구성하여 모든 Query를 보낸다.

Replication 방식

  • 두 개 이상의 DBMS 시스템을 Master / Slave로 나누어 동일한 데이터를 저장하는 방식
  • Master DBMS의 데이터를 Slave DBMS가 데이터를 로그기반복제(바이너리로그:Binary log)형태로 복사해 간다.

Master DBMS 역할

  • 웹서버로 부터 데이터 등록/수정/삭제 요청시 바이너리로그(Binarylog)를 생성하여 Slave 서버로 전달

Slave DBMS 역할

  • Master DBMS로 부터 전달받은 바이너리로그를 데이터로 반영하게 됨

Replication 목적

  1. 데이터의 백업
  2. DBMS의 부하 분산

Replication 장점

  1. 요청하는 Query가 대부분 Select명령어인데, Master에서 Select을 수행하지 않고, Slave에서 수행하기 때문에 DBMS의 부하를 분산시킨다.
  2. 따라서 Select(READ) 성능을 향상 시킬 수 있다.

Replication 주의 사항(MySQL)

  1. 호환성을 위해 Replication을 사용하는 MySQL의 동일하게 맞추는 것이 좋음
  2. Replication을 사용하기에 MySQL 버전이 다른 경우 Slave 서버가 상위 버전이여야함
  3. Replication을 가동시에 Master 서버, Slave 서버 순으로 가동 시켜야함

참고

profile
dev_pang의 pang.log

0개의 댓글