데이터베이스 · 1 min read · Feb 02, 2026
MySQL 5의 마스터-마스터 복제 설정하기 (Fedora 8에서)
MySQL 5의 마스터-마스터 복제 설정하기 (Fedora 8에서)
버전 1.0
저자: Oliver Meyer
이 문서는 Fedora 8에서 MySQL 5로 마스터-마스터 복제를 설정하는 방법을 설명합니다. 버전 5부터 MySQL은 마스터-마스터 복제를 위한 내장 지원을 제공하여 자동 생성된 키로 인해 발생할 수 있는 문제를 해결합니다. 이전 MySQL 버전에서는 마스터-마스터 복제의 문제는 노드 A와 노드 B가 동일한 테이블에 자동 증가 키를 삽입할 경우 즉시 충돌이 발생하는 것이었습니다. 전통적인 마스터-슬레이브 복제에 비해 마스터-마스터 복제의 장점은 애플리케이션을 수정하여 쓰기 접근을 마스터에만 하도록 할 필요가 없으며, 마스터가 실패하더라도 다른 마스터가 남아 있어 고가용성을 제공하기가 더 쉽다는 것입니다.
이 방법서는 이론적 배경을 다루지 않는 실용적인 가이드로 보증이 없습니다. 이러한 시스템을 설정하는 방법은 여러 가지가 있으며, 제가 선택한 방법입니다.
1 준비
이 방법서를 위해 두 개의 Fedora 8 시스템(최소 설치, GUI 없음 등)을 다음과 같은 구성으로 설정했습니다.
1.1 시스템 1
호스트 이름: server1.example.com
IP: 192.168.0.100
1.2 시스템 2
호스트 이름: server2.example.com
IP: 192.168.0.200
2 MySQL
2.1 두 시스템에서 필요한 패키지
두 시스템에 MySQL을 설치하지 않았다면 다음을 통해 설치할 수 있습니다 (클라이언트 및 서버):
yum -y install mysql mysql-server2.2 두 시스템에서 MySQL 서버 초기 시작
MySQL 서버를 시작합니다.
/etc/init.d/mysqld start2.3 MySQL 루트 비밀번호
2.3.1 두 시스템
로컬호스트에서 MySQL 루트 사용자에 대한 비밀번호를 설정합니다.
mysqladmin -u root password %sql_root_password%2.3.2 시스템 1
server1.example.com에서 MySQL 루트 사용자에 대한 비밀번호를 설정합니다.
mysqladmin -u root -h server1.example.com password %mysql_root_password%2.3.3 시스템 2
server2.example.com에서 MySQL 루트 사용자에 대한 비밀번호를 설정합니다.
mysqladmin -u root -h server2.example.com password %mysql_root_password%2.4 MySQL 복제 사용자
2.4.1 시스템 1
시스템 2가 시스템 1의 MySQL 데이터베이스에 접근하는 데 사용할 복제 사용자를 생성합니다.
mysql -u root -pGRANT REPLICATION SLAVE ON *.* TO 'slave2_user'@'%' IDENTIFIED BY '%mysql_slaveuser_password%';
FLUSH PRIVILEGES;
quit;2.4.2 시스템 2
시스템 1이 시스템 2의 MySQL 데이터베이스에 접근하는 데 사용할 복제 사용자를 생성합니다.
mysql -u root -pGRANT REPLICATION SLAVE ON *.* TO 'slave1_user'@'%' IDENTIFIED BY '%mysql_slaveuser_password%';
FLUSH PRIVILEGES;
quit;2.5 시스템 2의 데이터베이스
저는 시스템 1에 이미 존재하는 데이터베이스 exampledb가 있다고 가정합니다 - 레코드가 있는 테이블을 포함하고 있습니다. 따라서 시스템 1에 있는 기존 데이터베이스와 동일한 이름의 빈 데이터베이스를 생성해야 합니다.
mysql -u root -pCREATE DATABASE exampledb;
quit;새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.