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

mysql主主同步主从同步与MMM监控_第1张图片

前四台数据库都要搭建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

mysql主主同步主从同步与MMM监控_第2张图片

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

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

在这里插入图片描述

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

scp /etc/my.cnf [email protected]:/etc/
scp /etc/my.cnf [email protected]:/etc/
scp /etc/my.cnf [email protected]:/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

mysql主主同步主从同步与MMM监控_第3张图片

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

mysql主主同步主从同步与MMM监控_第4张图片
[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

mysql主主同步主从同步与MMM监控_第5张图片
出现双Yes说明master1中主的同步master2中的备的成功

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

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

mysql主主同步主从同步与MMM监控_第6张图片

在主服务器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

mysql主主同步主从同步与MMM监控_第7张图片出现双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

mysql主主同步主从同步与MMM监控_第8张图片

在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

mysql主主同步主从同步与MMM监控_第9张图片

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

create database ee;
show databases;

在这里插入图片描述
mysql主主同步主从同步与MMM监控_第10张图片

在master2从服务器上1上:
mysql主主同步主从同步与MMM监控_第11张图片

在slave1从服务器1上:
mysql主主同步主从同步与MMM监控_第12张图片

在slave2从服务器2上:
mysql主主同步主从同步与MMM监控_第13张图片
到此,主主备份主从同步成功

现在做对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

mysql主主同步主从同步与MMM监控_第14张图片

[root@master1 mysql-mmm]# scp mmm_common.conf [email protected]:/etc/mysql-mmm/
[root@master1 mysql-mmm]# scp mmm_common.conf [email protected]:/etc/mysql-mmm/
[root@master1 mysql-mmm]# scp mmm_common.conf [email protected]:/etc/mysql-mmm/
[root@master1 mysql-mmm]# scp mmm_common.conf [email protected]:/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
mysql主主同步主从同步与MMM监控_第15张图片
[root@master2 mysql-mmm]# vi mmm_agent.conf
mysql主主同步主从同步与MMM监控_第16张图片
[root@slave1 mysql-mmm]# vi mmm_agent.conf
mysql主主同步主从同步与MMM监控_第17张图片
[root@slave2 mysql-mmm]# vi mmm_agent.conf
mysql主主同步主从同步与MMM监控_第18张图片

在四台数据库中为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
mysql主主同步主从同步与MMM监控_第19张图片

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

在这里插入图片描述

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

mysql主主同步主从同步与MMM监控_第20张图片

将主服务器stop
service mariadb stop //模拟宕机
在再monitor服务器上mmm_control show
mysql主主同步主从同步与MMM监控_第21张图片

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

mysql主主同步主从同步与MMM监控_第22张图片

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

[root@slave1 ~]# service mariadb stop

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

在这里插入图片描述
[root@slave2 mysql-mmm]# ip add show ens33
mysql主主同步主从同步与MMM监控_第23张图片

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

你可能感兴趣的:(数据库)