mysql群集用_mysql群集架构mmm高可用群集

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

a9a0f6a58180330e7b8517acd2cb5471.png

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不能相同)

f12b81cc863c9309d2169e4ce798917e.png

ad66e485f3dd0069c62d95ec0b204a4a.png

5、启动mariadb

systemctl restart mariadb.service

57e8ecbd52e0194f769c2204dfd83716.png

二、主主复制

1、两台主服务器查看二进制文件以及偏移量

MariaDB [(none)]> show master status;

b673636d45caab6fca5d611fb8400234.png

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;

c8154280e05456e54087706406df4989.png

show slave status; 查看slave状态

a740de88af7a1a004ca5277ee1321862.png

三、主从复制

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

1f0f64f79e31cd5a74417130da6527e5.png

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;

b6f4f262cc19f18cbe899fd7656adca5.png

3、查看状态

09a9a9610cfd919df49748919cc5a8dd.png

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

1、yum安装

yum install mysqsl-mmm*

2、对mmm进行配置

vim /etc/mysql-mmm/mmm_common.conf

e18b564f1bbeab62cbd7964134fedd9a.png

e0081e780e2bc23e3ec9b3f203bc03f7.png

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/

70bc1092e2867eafc682af1f19d92548.png

四、监控服务器

1、修改配置文件

54ba093085ab1857f722074d21c38519.png

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;

8b210162a98c8f95f7993831b9dbbc0e.png

3、每台mysql主机修改各自身份

vim /etc/mysql-mmm/mmm_agent.conf

主1 db1

主2 db2

从1 db3

从2 db4

1b1a460b7b2ccf39e90e4e5b8443e607.png

4、mysql服务器开启代理服务

systemctl start mysql-mmm-agent.service

5、监控服务器开启监控服务

systemctl start mysql-mmm-monitor.service

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

mmm_control show

d2d919a8267e1df4e2350ce4ff280790.png

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

fc1c709be166ecfb00385d0e88bf7f0e.png

fc1930e6fe62ea3197151bc86cec2e9a.png

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

4fdb6d5be3dfaaa00f688a670b894578.png

1caf2e0b01e1ab639f1f230227e8e58a.png

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

77567809c8e8fc2a8144f07701bd2ee7.png

end~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值