Mariadb Master-Master Repication
3 min read

Mariadb Master-Master Repication

ติดตั้ง Mariadb ลง ทั้ง 2 เครื่อง

สามารถติดตั้งได้ตาม URL นี้

Download MariaDB Server - MariaDB.org
REST API Release Schedule Reporting Bugs … Continue reading “Download MariaDB Server”

1) เมื่อติดตั้งเสร็จแล้วทั้ง 2 เครื่องให้ปิด service mariadb ทั้ง 2 เครื่อง

systemctl stop mariadb

2) Master01 ให้ใส่ config ต่อไปนี้ลงไป

vim /etc/mysql/mariadb.conf.d/50-server.cnf

แก้ Ip และใส่คอนฟิกนี้ลงไป
#replication
server_id = 1
report_host = master
log_bin = /var/lib/mysql/mariadb-bin
log_bin_index = /var/lib/mysql/mariadb-bin.index
relay_log = /var/lib/mysql/relay-bin
relay_log_index = /var/lib/mysql/relay-bin.index

เสร็จแล้วสั่ง restart Mariadb เครื่อง Master01

3) Master02 ให้ใส่ config ต่อไปนี้ลงไป

แก้ไข IP เป็นของเครื่อง
#replication
server_id = 2
report_host = master2
log_bin = /var/lib/mysql/mariadb-bin
log_bin_index = /var/lib/mysql/mariadb-bin.index
relay_log = /var/lib/mysql/relay-bin
relay_log_index = /var/lib/mysql/relay-bin.index

เสร็จแล้วสั่ง restart Mariadb เครื่อง Master02

4) สร้าง user สำหรับ replication บน Master01 และ Master02

Master02

mysql
create user 'master02'@'%' identified by '8$82QH:FKjh*';
grant replication slave on . to 'master02'@'%';

จดไว้ใช้กับ master01
show master status;

Master01

mysql
create user 'master01'@'%' identified by '8$82QH:FKjh*';
grant replication slave on . to 'master01'@'%';

จดไว้ใช้กับ master02
show master status;

5) เชื่อมต่อ master01 เข้ากับ master02

เครื่อง master02

STOP SLAVE;
CHANGE MASTER TO MASTER_HOST='172.30.31.113', MASTER_USER='master01', MASTER_PASSWORD=’8$82QH:FKjh*', MASTER_LOG_FILE='mariadb-bin.000001', MASTER_LOG_POS=659;

#MASTER_HOST ใส่ IP
#MASTER_USER ใส่ user ของ master01
#MASTER_PASSWORD ใส่ pass ของ master01
#MASTER_LOG_FILE และ MASTER_LOG_POS ใส่ข้อมูลที่ให้จดไว้

เสร็จแล้วสั่ง start slave

เช็คการเชื่อมต่อ

show slave status \G


เครื่อง master01

STOP SLAVE;
CHANGE MASTER TO MASTER_HOST='172.30.31.113', MASTER_USER='master02', MASTER_PASSWORD='8$82QH:FKjh*', MASTER_LOG_FILE='mariadb-bin.000002', MASTER_LOG_POS=659;

#MASTER_HOST ใส่ IP
#MASTER_USER ใส่ user ของ master02
#MASTER_PASSWORD ใส่ pass ของ master02
#MASTER_LOG_FILE และ MASTER_LOG_POS ใส่ข้อมูลที่ให้จดไว้

เสร็จแล้วสั่ง start slave

เช็คสถานะการเชื่อมต่อ


ทดสอบการเชื่อมต่อโดยสร้าง DB บน Master01 แล้ว show บน Master02 และ สร้าง DB บน Master02 แล้ว show บน Master01


Ref.

How to Configure MariaDB Master-Master/Slave Replication? | Windows OS Hub
Replication in SQL databases is the process of copying data from the source database to another one (or multiple ones) and vice versa. Data from one database server are constantly…