mysql主主同步主从同步与MMM监控

在这里插入图片描述

前四台数据库都要搭建mariadb数据库与环境都是一样的

搭建阿里云yum仓库环境
vi local.repo //建立阿里云仓库在本地仓库中添加以下内容

[Ali]
name=CentOS-$releasever - Base
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

四台服务器安装以下程序:

yum install -y wget //安装下载wget软件

wget -O /etc/yum.repos.d/ali.repo http://mirrors.aliyun.com/repo/Centos-7.repo

在这里插入图片描述

yum -y install epel-release //下载epel源

在这里插入图片描述

yum clean all //清楚缓存
yum makecache //建立数据库缓存

yum -y install mariadb-server mariadb //安装数据库

以上是前四台要安装的环境最后一步安装mariadb数据库,安装环境到此结束

在主服务器上
systemctl start mariadb //开启数据库
vi /etc/my.cnf //进入数据库配置文件中,删除添加以下内容

[mysqld]
log_error=/var/lib/mysql/mysql.err
log=/var/lib/mysql/mysql_log.log
log_slow_queries=/var/lib/mysql_slow_queris.log
binlog-ignore-db=mysql,information_schema
character_set_server=utf8
log_bin=mysql_bin
server_id=1
log_slave_updates
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=1
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

在这里插入图片描述

service mariadb restart && systemctl enable mariadb //开启数据库并设置开机自启

netstat -anpt | grep 3306 //查看数据库端口

在这里插入图片描述

-------没有问题后,前提是后面3台操作过了上面的实验环境把配置文件复制到其它3台数据库服务器上并启动服务器-----

scp /etc/my.cnf root@192.168.80.101:/etc/
scp /etc/my.cnf root@192.168.80.102:/etc/
scp /etc/my.cnf root@192.168.80.103:/etc/

mysql_secure_installation //数据库安装配置安全问题4台都要做
密码设置为abc123:y-n-y-y

mysql -uroot -pabc123 //进入数据库

表示我这个主数据库要让从数据库来访问开启授权权限

grant replication slave on *.* to 'replication'@'192.168.80.%' identified by '123456';
flush privileges;
show master status \G

在这里插入图片描述

在备用主服务器上:
[root@master2 ~]# vi /etc/my.cnfvi /etc/my.cnf
修改一下Server-id ,其他从服务器也要修改

在这里插入图片描述
[root@master2 ~]# service mariadb restart
[root@master2 ~]# mysql_secure_installation
[root@master2 ~]# mysql -uroot -pabc123

change master to master_host='192.168.80.100',master_user='replication',master_password='123456',master_log_file='mysql_bin.000001',master_log_pos=490;
start slave;
show slave status \G

在这里插入图片描述
出现双Yes说明master1中主的同步master2中的备的成功

在master2数据库中,此时master2成为主的授权给其他网段能够访问数据库的权限

stop slave;  #先停止从的
grant replication slave on *.* to 'replication'@'192.168.80.%' identified by '123456';
    show master status \G

在这里插入图片描述

在主服务器master1中:

change master to master_host='192.168.80.101',master_user='replication',master_password='123456',master_log_file='mysql_bin.000005',master_log_pos=410;
start slave;
show slave status \G

在这里插入图片描述出现双Yes说明主主同步到此完成
如果过程中没有出现Yes,可能没有重启没有开启start slave模式,还有可能配置文件中没有修改id原因

在slave1从服务器1上:

stop slave;
change master to master_host='192.168.80.100',master_user='replication',master_password='123456',master_log_file='mysql_bin.000001',master_log_pos=490;
start slave;
show slave status \G

在这里插入图片描述

在slave2从服务器2上:
change master to master_host=‘192.168.80.100’,master_user=‘replication’,master_password=‘123456’,master_log_file=‘mysql_bin.000001’,master_log_pos=490;
start slave;
MariaDB [(none)]> show slave status \G

在这里插入图片描述

测试:
在主备服务器上创建一个空库:

create database ee;
show databases;

在这里插入图片描述
在这里插入图片描述

在master2从服务器上1上:
在这里插入图片描述

在slave1从服务器1上:
在这里插入图片描述

在slave2从服务器2上:
在这里插入图片描述
到此,主主备份主从同步成功

现在做对mmm进行配置5台机子联网下载mmm最后一台监控端monitor
-------安装MMM----在所有服务器上安装-----注意,epel源要配置好

yum -y install mysql-mmm* //5台都要安装

-------安装结束后,对mmm进行配置------
在slave1主服务器上:
cd /etc/mysql-mmm/ //切换目录

在这里插入图片描述

标识配置文件agent,通用配置文件comon,监控配置文件mon

[root@master1 mysql-mmm]# vi mmm_common.conf

在这里插入图片描述

[root@master1 mysql-mmm]# scp mmm_common.conf root@192.168.80.101:/etc/mysql-mmm/
[root@master1 mysql-mmm]# scp mmm_common.conf root@192.168.80.102:/etc/mysql-mmm/
[root@master1 mysql-mmm]# scp mmm_common.conf root@192.168.80.103:/etc/mysql-mmm/
[root@master1 mysql-mmm]# scp mmm_common.conf root@192.168.80.104:/etc/mysql-mmm/

将这些数据传给其他3台数据库

在monitor服务器上配置80.104:
[root@monitor ~]# cd /etc/mysql-mmm/
[root@monitor mysql-mmm]# vi mmm_mon.conf
在这里插入图片描述

在其它mysql服务器上:
[root@master1 mysql-mmm]# vi mmm_agent.conf
在这里插入图片描述
[root@master2 mysql-mmm]# vi mmm_agent.conf
在这里插入图片描述
[root@slave1 mysql-mmm]# vi mmm_agent.conf
在这里插入图片描述
[root@slave2 mysql-mmm]# vi mmm_agent.conf
在这里插入图片描述

在四台数据库中为mmm_agent授权

grant super, replication client, process on *.* to 'mmm_agent'@'192.168.80.%' identified by '123456';

grant replication client on *.* to 'mmm_monitor'@'192.168.80.%' identified by '123456';

flush privileges;

在四台数据库中开启mysql-mmm-agent服务并设为开机自启

 systemctl start mysql-mmm-agent
 systemctl enable mysql-mmm-agent

在monitor服务器上配置80.105中:
[root@monitor mysql-mmm]# vi mmm_mon.conf
在这里插入图片描述

systemctl start mysql-mmm-monitor //启动mysql-mmm-monitor 5台机子都要执行这条命令

在这里插入图片描述

[root@monitor mysql-mmm]# mmm_control checks all

在这里插入图片描述

将主服务器stop
service mariadb stop //模拟宕机
在再monitor服务器上mmm_control show
在这里插入图片描述

在master2(db2)上查看漂移地址

在这里插入图片描述

验证将从服务器停止一台,另一台将接管两个虚拟IP,以保证业务不停止

[root@slave1 ~]# service mariadb stop

在monitor上面查看
[root@monitor mysql-mmm]# mmm_control show

在这里插入图片描述
[root@slave2 mysql-mmm]# ip add show ens33
在这里插入图片描述

到此mysql主主同步主从同步与MMM监控完成

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值