码迷,mamicode.com
首页 > 数据库 > 详细

mysql群集架构mmm高可用群集

时间:2018-09-11 01:03:12      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:oss   user   system   clean   aliyun   info   art   ignore   ges   

MMM(Master-Master replication manager for MySQL)是一套支持双主故障切换和双主日常管理的脚本程序。
优点:高可用性,扩展性好,出现故障自动切换,对于主主同步,在同一时间只提供一台数据库写操作,保证的数据的一致性。当主服务器挂掉以后,另一个主立即接管,其他的从服务器能自动切换,不用人工干预。


master1 ip地址:192.168.60.135
master2 ip地址:192.168.60.136
slave1 ip地址:192.168.60.143
slave2 ip地址:192.168.60.144
monitor ip地址:192.168.60.130

mysql版本为mariadb,使用yum直接安装用于实验


一、所有主机配置yum源

1、配置ALI云源
wget -O /etc/yum.repos.d/CentOs-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

技术分享图片

2、安装epel-release源
yum install epel-release -y
yum clean all & yum makecache


3、yum一键安装mariadb
yum install mariadb mariadb-server -y


4、修改配置文件
vim /etc/my.cnf
[mysqld]
log_error=/usr/local/mysql/data/mysql.err
log_slow_queries=/usr/local/data/mysql_slow_queris.log
log=/usr/local/mysql/data/mysql_log.log
binlog_ignore-db=mysql,information_schema
character_set_server=utf8
log_slave_updates=true
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=1
log_bin=mysql-bin
server-id = 1 (每台的主机server-id不能相同)

技术分享图片
技术分享图片

5、启动mariadb
systemctl restart mariadb.service

技术分享图片

二、主主复制

1、两台主服务器查看二进制文件以及偏移量
MariaDB [(none)]> show master status;

技术分享图片

2、两台主服务器都需要授权
grant replication slave on . to ‘replication‘@‘192.168.60.%‘ identified by ‘123456‘;


3、两台主服务器互相设置主(对应之前查看的二进制日志,以及偏移量)
change master to master_host=‘192.168.60.136‘,master_user=‘replication‘,master_password=‘123456‘,master_log_file=‘mysql-bin.000001‘,master_log_pos=245;
change master to master_host=‘192.168.60.135‘,master_user=‘replication‘,master_password=‘123456‘,master_log_file=‘mysql-bin.000001‘,master_log_pos=245;

技术分享图片

show slave status; 查看slave状态

技术分享图片

三、主从复制

1、查看任意一台主服务器的master状态

技术分享图片

2、从服务器进行主从复制
change master to master_host=‘192.168.60.135‘,master_user=‘replication‘,master_password=‘123456‘,master_log_file=‘mysql-bin.000001‘,master_log_pos=575;

技术分享图片

3、查看状态

技术分享图片

三、每台服务器都安装mysql-mmm*

1、yum安装
yum install mysqsl-mmm*


2、对mmm进行配置
vim /etc/mysql-mmm/mmm_common.conf

技术分享图片
技术分享图片

3、将配置覆盖给每台主机
scp mmm_common.conf root@192.168.60.136:/etc/mysql-mmm/
scp mmm_common.conf root@192.168.60.143:/etc/mysql-mmm/
scp mmm_common.conf root@192.168.60.144:/etc/mysql-mmm/
scp mmm_common.conf root@192.168.60.130:/etc/mysql-mmm/

技术分享图片

四、监控服务器

1、修改配置文件

技术分享图片

2、每天mysql主机给代理用户,监控用户授权
grant super,replication client,process on . to ‘mmm_agent‘@‘192.168.60.%‘ identified by ‘123456‘;
grant replication client on . to ‘mmm_monitor‘@‘192.168.60.%‘ identified by ‘123456‘;
flush privileges;

技术分享图片

3、每台mysql主机修改各自身份
vim /etc/mysql-mmm/mmm_agent.conf
主1 db1
主2 db2
从1 db3
从2 db4

技术分享图片

4、mysql服务器开启代理服务
systemctl start mysql-mmm-agent.service


5、监控服务器开启监控服务
systemctl start mysql-mmm-monitor.service


6、监控服务器查看各监控点状态
mmm_control show

技术分享图片

7、在有虚拟IP的那台主机上授权登陆用户

技术分享图片

技术分享图片

8、关掉一台主机的mysql服务,看虚拟地址会不会移动

技术分享图片
技术分享图片

9、再关掉一台从服务器,看虚拟IP移动

技术分享图片
end~

mysql群集架构mmm高可用群集

标签:oss   user   system   clean   aliyun   info   art   ignore   ges   

原文地址:http://blog.51cto.com/13760226/2173555

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!