目標(biāo)
實現(xiàn)mysql的mmm架構(gòu)
備注
- server[1-4]
- 用戶名:dlq收班,密碼:donglq
- server[1-3]每臺部署3306實例
- server1儡羔、server2互為主從凤壁,server3為從
- server4部署mysql-mmm-monitor
- ip 10.89.10.230(寫)荚藻,10.89.10.231(讀)蜘欲,10.89.10.232(讀)
- 官方文檔:http://mysql-mmm.org/doku.php
步驟
安裝數(shù)據(jù)庫
- 省略
設(shè)置主從復(fù)制
- 創(chuàng)建主從復(fù)制賬戶
GRANT REPLICATION SLAVE ON *.* to 'rep'@'ip' identified by 'replication';
- 查看主數(shù)據(jù)庫當(dāng)前執(zhí)行位置猾担,記錄下File和Position
show master status;
- 從數(shù)據(jù)庫執(zhí)行同步語句
change master to master_host='ip',
master_port=33086,
master_user='rep', master_password='replication', master_log_file='mysql-bin.000004', master_log_pos=445;
- 啟動slave
start slave;
MMM的安裝與配置
- 安裝mysql-mmm-monitor
sudo yum -y install mysql-mmm-monitor
- 每一個Mysql節(jié)點上安裝mysql-mmm-agent
sudo yum -y install mysql-mmm-agent
- 在所有Mysql節(jié)點上創(chuàng)建MMM的兩個賬號
- mmm_monitor:所有mysql節(jié)點進(jìn)行健康檢查
- mmm_agent:切換只讀模式和同步Master信息
GRANT REPLICATION CLIENT ON *.* TO 'mmm_monitor'@'ip' IDENTIFIED BY 'donglq';
GRANT SUPER, REPLICATION CLIENT, PROCESS ON *.* TO 'mmm_agent'@'ip' IDENTIFIED BY 'donglq';
- 為eth0增加虛擬ip
server1: sudo ip addr add 10.89.10.230/24 dev eth0
server2: sudo ip addr add 10.89.10.231/24 dev eth0
server3: sudo ip addr add 10.89.10.232/24 dev eth0
ip addr show //查看
配置文件袭灯,在/etc/mysql-mmm下
日志在/var/log/mysql-mmm/下
在每個mysql服務(wù)器上啟動agent
sudo /etc/init.d/mysql-mmm-agent @6 start
- 在monitor服務(wù)器上啟動monitor
sudo /etc/init.d/mysql-mmm-monitor @6 start
- 查看狀態(tài)
sudo mmm_control @6 show
- 設(shè)置db上線
sudo mmm_control @6 set_online db2
- 查看mmm-agent端口進(jìn)程
sudo netstat -pna|grep 端口