안녕하세요.
쉽게 시작하는 비즈니스 토탈IT, 아이티이지 입니다.

오늘 기술 블로그에서는 DB 이중화에 대해 다뤄보겠습니다.
DB(DateBase)를 복제(Replication)하는 이유는 크게 부하분산, 백업 등으로 나눌 수 있는데요.
그럼 바로 MySQL과 MSSQL 이중화 방식에 대해서 알아볼까요?

🔎 Replication란?

리플리케이션(Replication)은 ‘복제’의 의미를 가지고 있으며,
2대 이상의 DBMS가 데이터를 동기화하여 저장하는 방식을 말합니다.
즉, 리플리케이션은 Master-Slaver 구조로 이중화(다중화)를 구성합니다.

Master서버의 역할은 웹 서버로부터 요청 된 생성/수정/삭제 데이터를 *BinaryLog(binlog)
생성하여 Slave서버로 동기화를 시켜줍니다. Slave서버의 역할은 Master서버로부터 전달받은
BinaryLog를 동기화하여 반영하고, 읽기 전용 *DBMS로 많이 사용됩니다.

*BinaryLog : DB상에서 업데이트가 되는 모든 쿼리를 저장하는 로그
*DBMS(DataBase Management System) : 데이터베이스를 조작하는 별도의 소프트웨어

그렇다면 Replication은 어떻게 작동할까요?
Replication 구조에 대해서 알려드리겠습니다.

Replication 구조
Replication 구조는 Backup 형식과 부하분산 형식으로 구분됩니다.
1) Backup 형식 – 데이터 보존을 위한 단순 백업을 목적으로 이용하는 방식

2) 부하분산 형식 – Slave서버를 단순 읽기서버로 이용하면서 DB의 부하를 분산하는 방식


이중화 구성 방법
1. Replication
[구성정보]
– 서버 : Master서버 1대, Slave서버 1대
– IP : 10.10.30.31(Master), 10.10.30.32(Slave)
– DB : iteasy
– DB계정 : iteasy
– Replication 계정 : repl, PW : 1234

1) DB생성 및 replication 계정생성
✔ Master서버 (10.10.30.31)
MariaDB [mysql]> create database iteasy;
MariaDB [mysql]> grant replication slave on *.* to ‘repl’@’%’ identified by ‘1234’;
MariaDB [mysql]> flush privileges;
 Slave서버 (10.10.30.32)
MariaDB [mysql]> create database iteasy;

2) My.cnf 설정
 Master서버
[root@master ~]# vi /etc/my.cnf.d/server.cnf
[root@slave ~]# systemctl restart mariadb

Slave서버
[root@slave ~]# vi /etc/my.cnf.d/server.cnf
[root@slave ~]# systemctl restart mariadb

*Master DB의 데이터가 존재하는 경우 DB dump백업본을 Slave서버에 전달하여 동일한 데이터로 복원을 시켜주어야 합니다.
*log-bin : DBMS에서 발생하는 모든 내역들이 기록되는 파일을 말합니다.
*server-id : 서버를 지칭하는 번호, 각 서버마다 구분되는 번호를 말합니다.

3) Replication 설정
✔ Master서버 : bin로그파일 및 position값 확인

✔ Slave서버 : replication 적용
MariaDB [mysql]> CHANGE MASTER TO MASTER_HOST=’10.10.30.31′,
MASTER_USER=’repl’,
MASTER_PASSWORD=’1234′,
MASTER_LOG_FILE=’mysql-bin.000001′,
MASTER_LOG_POS=1516;
MariaDB [mysql]> start slave;
MariaDB [mysql]> SHOW SLAVE STATUS\G 상태 확인


DB 이중화 Replication 설정 방법! 도움이 되셨길 바랍니다.
다음 포스팅은 DB 이중화 Replication 설정 방법에 이어서 DB 이중화 galera에 대해서 알려드릴게요!

앞으로도 유익하고 알찬 정보를 공유하겠습니다!
추가로 궁금하신 내용이 있으시다면, 언제든지 문의해주세요!😊🙏
🏠홈페이지 바로가기
📝서비스 문의하기

DB 이중화 Replication 설정”의 1개의 생각

댓글 남기기