본문 바로가기
Database/MYSQL

Mysql Dual master – slave replication - 준비사항

by 반화넬 2023. 7. 23.
반응형

안녕하세요.

오늘은 간단하게 Mysql Dual master – slave replication 구성하는 방법을 단계별로 알아볼까 합니다. 차근 차근 따라 하시면 쉽게 구성 가능하실거에요.

 

Replication 왜 필요하지?


데이터베이스에 데이터를 잘 저장하고 잘 불러오고 있는데 굳이 서버 하나를 늘려서 이중화를 시켜야 하는 이유가 무엇입니까? 라고 당연히 물어볼 수 있을 것 같습니다. Replication이 필요한 이유는 다음과 같습니다.

일종의 부하 분산이 가장 큰 이유죠.. 개인 프로젝트를 포함하여 모든 프로젝트가 그렇지만, DB에 접근해서 처리해야 하는 것들이 대부분일 겁니다. 읽기, 쓰기, 수정의 모든 연산이 하나의 DB에서 일어난다면 트래픽이 늘어남에 따라 자연스럽게 병목 현상 이 생길 수 밖에 없습니다.

쓰기는 원본 서버 에서만 수행하게 하고 읽기 기능은 원본의 복제 서버 에서 읽어오게 한다면 쓰기의 기능과 읽기의 기능을 병목 없이 모두 향상시킬 수 있게 됩니다.

 

사용 프로그램

Dual master replication 구성
가상머신 : VMware-player-full-16.2.1-18811642
OS : ubuntu-20.04.3-desktop-amd64
SQL Client : SQLyog-13.1.8-0.x64Community

Dual 복제 서버 구성

단일 서버
Master – Slave N대 구성
Dual Master 구성
Dual Master – Slave N대 구성
클러스터링 및 MHA(Master High Availability) 구성

복제 구성을 하는 이유 : 로드 분산

 

Daul Master 구성 세팅

Replication을 구성하는 이유?

단일 master 서버의 단점을 보완
Master1 서버장애시  Master2 서버가 대체하여 서비스 유지
데이터 이중화 효과 , 부하 분산 효과 , 서비스 지속성 향상

 

 

Mysql / Mariadb 등 복제를 구성하는 이유는 바로 로드 분산의 목적이 가능하며 IO 분산 그리고 select 같은 쿼리의 분산을 통해 더 많은 유저의 유입이 가능하도록 하기 위한 목적이 있습니다. 듀얼 마스터 구성만 잘해놓는다면 어떤 서비스에서도 장애 없이 서비스 이용 가능하다는점 체크 하시면 좋을거에요.

 

다음 단계_부터는 진행 시작하겠습니다. 

감사합니다.

반응형