Mariadb Master-Master Repication
ติดตั้ง Mariadb ลง ทั้ง 2 เครื่อง
สามารถติดตั้งได้ตาม URL นี้
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.