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

mysql-mmm操作总结

时间:2019-01-17 23:51:34      阅读:286      评论:0      收藏:0      [点我收藏+]

标签:orm   ror   img   网卡   check   firewall   inf   slow   err   

五台虚拟机 双网卡 第一块内网,第二块外网 80.100 主数据库1 80.101 主数据库2 80.102 从数据库1 80.103 从数据库2 80.104 监控端 monitor
搭建阿里云yum仓库:
vi /etc/yum.repos.d/ali.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

技术分享图片

scp /etc/yum.repos.d/ali.repo  root@192.168.80.101:/etc/yum.repos.d/

scp /etc/yum.repos.d/ali.repo  root@192.168.80.102:/etc/yum.repos.d/

scp /etc/yum.repos.d/ali.repo  root@192.168.80.103:/etc/yum.repos.d/

scp /etc/yum.repos.d/ali.repo  root@192.168.80.104:/etc/yum.repos.d/

技术分享图片
注:如果有ip地址,关了网卡ping不通网页修改以下内容

vi /etc/sysconfig/network-scripts/ifcfg-ens32      //进入网卡配置文件

技术分享图片

把圈中的命令删掉在使用下一条命令
systemctl   restart network    //重启网卡
四台服务器安装以下程序:

systemctl stop firewalld      //关闭防火墙
setenforce 0         //关闭监控

[root@lq5 yum.repos.d]# ifconfig ens34 down     //关闭ens34网卡
[root@lq5 yum.repos.d]# ifconfig ens34 up          //开启ens34网卡

yum install -y wget

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

yum -y install epel-release

yum clean all && yum makecache

yum -y install mariadb-server mariadb

yum install mariadb-server -y

在主服务器上

[root@NGINX ~]# systemctl start mariadb
[root@NGINX ~]# 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

技术分享图片

[root@NGINX ~]#  service mariadb restart
[root@NGINX ~]# netstat -anpt | grep 3306

技术分享图片

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

[root@NGINX ~]# scp /etc/my.cnf root@192.168.80.101:/etc/
[root@NGINX ~]# scp /etc/my.cnf root@192.168.80.102:/etc/
[root@NGINX ~]# scp /etc/my.cnf root@192.168.80.103:/etc/
[root@NGINX ~]# mysql -u root

技术分享图片

MariaDB [(none)]> grant replication slave on *.* to ‘replication‘@‘192.168.80.%‘ identified by ‘123456‘;
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> show master status \G

技术分享图片

在从服务器上:

[root@test ~]# vi /etc/my.cnf

修改一下Server-id ,其他从服务器也要修改
技术分享图片

[root@test ~]# service mariadb restart

[root@test ~]# mysql -u root

MariaDB [(none)]> grant replication slave on *.* to ‘replication‘@‘192.168.80.%‘ identified by ‘123456‘;

MariaDB [(none)]> change master to master_host=‘192.168.80.100‘,master_user=‘replication‘,master_password=‘123456‘,master_log_file=‘mysql_bin.000003‘,master_log_pos=490;

MariaDB [(none)]> start slave;

MariaDB [(none)]> show slave status \G

技术分享图片

MariaDB [(none)]> show master status \G

技术分享图片
在主服务器中:

MariaDB [(none)]> change master to master_host=‘192.168.80.101‘,master_user=‘replication‘,master_password=‘123456‘,master_log_file=‘mysql_bin.000003‘,master_log_pos=410;

MariaDB [(none)]> start slave;

MariaDB [(none)]> show slave status \G

技术分享图片
在从服务器1上:

vi /etc/my.cnf

技术分享图片

[root@NGINX ~]#  service mariadb restart
[root@NGINX ~]# netstat -anpt | grep 3306

技术分享图片

mysql -u root

技术分享图片

MariaDB [(none)]> 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;
MariaDB [(none)]> start slave;
MariaDB [(none)]> show slave status \G

技术分享图片

在从服务器2上:

[root@test ~]# vi /etc/my.cnf

修改一下Server-id ,其他从服务器也要修改
技术分享图片

[root@NGINX ~]#  service mariadb restart
[root@NGINX ~]# netstat -anpt | grep 3306

技术分享图片

mysql -u root

技术分享图片

MariaDB [(none)]> 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;
MariaDB [(none)]> start slave;
MariaDB [(none)]> show slave status \G

技术分享图片

测试:
在主备服务器上创建一个空库:
MariaDB [(none)]> create database aa;
MariaDB [(none)]> show databases;

在从服务器上1上:

技术分享图片
在从服务器2上:

技术分享图片

到此,主主备份主从同步成功

现在做对mmm进行配置
-------安装MMM----在所有服务器上安装-----注意,epel源要配置好
yum -y install mysql-mmm*

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

在主服务器上:

[root@NGINX ~]# cd /etc/mysql-mmm/
[root@NGINX mysql-mmm]# ls

技术分享图片

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

修改以下圈住部分:

技术分享图片

技术分享图片

发送给其他数据库服务器
 scp mmm_common.conf root@192.168.80.101:/etc/mysql-mmm/
 scp mmm_common.conf root@192.168.80.102:/etc/mysql-mmm/
 scp mmm_common.conf root@192.168.80.103:/etc/mysql-mmm/
  scp mmm_common.conf root@192.168.80.104:/etc/mysql-mmm/

在monitor服务器上配置:

[root@MYSQL ~]# cd /etc/mysql-mmm/
[root@MYSQL mysql-mmm]# vi mmm_mon.conf

技术分享图片

在其它mysql服务器上:
[root@NGINX mysql-mmm]# vi /etc/mysql-mmm/mmm_agent.conf
技术分享图片

主数据库1:this db1
主数据库2:this db2
从数据库1:this db3
从数据库2:this db4
monitor服务器:this db5

是在各自的配置文件修改,不是在一个虚拟机,每个虚拟机都要执行的操作。

在四台数据库中为mmm_agent授权
grant super, replication client, process on *.* to ‘mmm_agent‘@‘192.168.80.%‘ identified by ‘123‘;

grant replication client on *.* to ‘mmm_monitor‘@‘192.168.80.%‘ identified by ‘123‘;

systemctl start mysql-mmm-agent

在monitor服务器上配置:

[root@MYSQL mysql-mmm]# vi mmm_mon.conf

技术分享图片

systemctl start mysql-mmm-monitor //启动mysql-mmm-monitor

netstat -anp | grep 9988

技术分享图片

mmm_control checks all

技术分享图片

mmm_control show
技术分享图片

查看是否有漂移地址
主数据库1
技术分享图片
从数据库1
技术分享图片
从数据库2
技术分享图片

模拟主数据库1,从数据库1故障,查看漂移地址是否从主数据库1漂移到主数据库2,和从数据库1的地址漂移到从数据库2上去
主数据库1
systemctl stop mariadb
主数据库2
技术分享图片
从数据库1
systemctl stop mariadb
从数据库2
技术分享图片

mysql-mmm操作总结

标签:orm   ror   img   网卡   check   firewall   inf   slow   err   

原文地址:http://blog.51cto.com/14158288/2343980

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