mysql数据库之mmm

需求

五台虚拟机
双网卡 第一块内网,第二块外网
80.111 主数据库1
80.112 主数据库2
80.113 从数据库1
80.114 从数据库2
80.115 监控端 monitor

systemctl stop firewolld
setenforce 0     //关闭防火墙

四台服务器安装以下程序:
yum install -y wget
yum -y install epel-release
yum clean all && yum makecache
yum -y install mariadb-server mariadb

systemctl start mariadb  //启动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

如图所示
在这里插入图片描述

service mariadb restart    //重启一下mariadb
netstat -anpt | grep 3306     //检查3306端口是否运行mysql

在这里插入图片描述

-------没有问题后,把配置文件复制到其它3台数据库服务器上并启动服务器-----

 scp /etc/my.cnf [email protected]:/etc/my.cnf     将配置文件发送到另外三台服务器上
 scp /etc/my.cnf [email protected]:/etc/my.cnf
 scp /etc/my.cnf [email protected]:/etc/my,cnf

注:如果是第一次发送会出以下提示,只需输入yes 在输入root密码即可
在这里插入图片描述
在这里插入图片描述

再到另外三台服务器的vi /etc/my.cnf 此目录下修改server_id=2分别改为2 3 4即可

mysql_secure_installation    //为数据库设置安全密码
步骤为   回车    y  密码   确认密码   y   n  y   y
另外三台也要设置	
注:若未启动数据库则无法设置``

mysql -uroot -p密码    即可登陆数据库
在数据库中
grant replication slave on *.* to 'myslave'@'192.168.80.%' identified by '123';   //授权,允许80网段的来同步本台服务器的二进制文件

在这里插入图片描述

   show master status \G   //查看信息,用于提供有关从属服务器线程的关键参数的信息  这两行内容等下要用到

在这里插入图片描述
再另外一台主数据库中指定主数据库
以下命令末尾的两个参数就是刚刚的内容

change master to master_host='192.168.80.111',master_user='myslave',master_password='123',master_log_file='mysql_bin.000001',master_log_pos=1420;

在这里插入图片描述

start slave;   //启动
show slave status \G     //用于提供有关从属服务器线程的关键参数的信息

在这里插入图片描述
如果有图上的两个yes即为成功
注:如果未成功有可能是防火墙没关闭的原因,一定要检查一下万恶的防火墙

扫描二维码关注公众号,回复: 5259147 查看本文章

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

MariaDB [(none)]> create database aa;
MariaDB [(none)]> show databases;

再另一台贮备服务器上show databases;查看此时有aa库代表两台主备i服务器可以同步如下图
在这里插入图片描述
在这里插入图片描述
我们可以到另外从服务器上进行同样的操作,到此主主备份中从同步成功

下面进行mmm的操作
-------安装MMM----在所有服务器上安装-----注意,epel源要配置好

yum -y install mysql-mmm*

-------安装结束后,对mmm进行配置------

cd /etc/mysql-mmm/
ls进行查看mmm的配置文件

在这里插入图片描述

mmm_agent.conf     //监控数据库
mmm_mon.conf     //监控数据管控端
mmm_tools.conf     //工具
mmm_common,conf   //通用配置文件
mmm_monlog.conf     //日志

更改配置

vi   到mmm_agent,conf中将最后的db更改,分别改为db1,另外三台也要改,改为db2,db3,db4即可最后一台暂时不动
再到 vi mm_common.conf中配置

在这里插入图片描述

cluster_interface这一行网卡改为自己的内网网卡
replication_user 改为myslave    数据库中的用户
replication_password   改为123   密码
agent_password   也改为123

下面的host配置更改里面的ip地址分别改为相对应的,由于没有db4所以要手动添加一个进行更改
在这里插入图片描述
<role writer>配置中的ip地址改为相同网段即可
将role reader中的db1,db2改为db3,db4并为db3 4分配地址
在这里插入图片描述
完成后保存退出
将更改后的配置发送到另外四台服务器上

scp mmm_common.conf [email protected]:/etc/mysql-mmm/

发送完成后到最后一台服务器管控端上

vi  /etc/mysql-mmm/mmm_mon.conf

在这里插入图片描述
在ping_ips中加入前面四台服务器的ip地址以保证服务器间能相互ping同
在这里插入图片描述
修改密码

在四台数据库中为mmm_agent授权
grant super, replication client, process on *.* to 'mmm_agent'@'192.168.80.%' identified by '123';
为mmm_moniter授权
 grant replication client on *.* to 'mmm_monitor'@'192.168.80.%' identified by '123';
授权好后刷新一下
 flush privileges;
 完成后开启agent服务并设置为开机自启
  systemctl start mysql-mmm-agent
  systemctl enable mysql-mmm-agent
  在管控段上启动
  systemctl start mysql-mmm-monitor
  查看有没有在运行
  netstat -anpt | grep 9988

在这里插入图片描述
mmm_control checks all 用这条命令查看各项服务是否全部成功
在这里插入图片描述
mmm数据库配置就完成了

猜你喜欢

转载自blog.csdn.net/qq_35734972/article/details/86524215