其中master对外提供写服务,备选master(实际的slave,主机名slave1)提供读服务,slave也提供相关的读 服务,一旦master宕机,将会把备选master提升为新的master,slave指向新的master,manager作为管理服务 器。
一、开始部署
注:时间要同步
#在四台机器都配置epel源
[root@manager ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
#建立ssh无交互登录环境
#Manager主机:
[root@manager ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id\_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id\_rsa.
Your public key has been saved in /root/.ssh/id\_rsa.pub.
The key fingerprint is:
1c:cb:2d:4f:b1:80:ea:80:35:3b:89:48:5f:09:eb:2e root@manager
The key's randomart image is:
+--[ RSA 2048]----+
| . |
| o .. |
| .o. o. o . |
|o+o+.. o = o |
|+ =o. S + |
| .+ + |
| E .. . |
| . |
| |
+-----------------+
[root@manager ~]# for i in manager master slave1 slave2;do ssh-copy-id -i $i;done # 分发到其他主机
#master主机
[root@master ~]# ssh-keygen -t rsa
[root@master ~]# for i in manager master slave1 slave2;do ssh-copy-id -i $i;done
#slave1主机
[root@slave1 ~]# ssh-keygen -t rsa
[root@slave1 ~]# for i in manager master slave1 slave2;do ssh-copy-id -i $i;done
#slave2主机
[root@slave2 ~]# ssh-keygen -t rsa
[root@slave2 ~]# for i in manager master slave1 slave2;do ssh-copy-id -i $i;done
测试ssh无交互登录
[root@manager ~]# for i in master manager slave1 slave2;do ssh $i hostname;done
master
manager
slave1
slave2
[root@manager ~]# ssh master
Last failed login: Thu Jul 2 17:05:01 CST 2020 from 192.168.171.150 on ssh:notty
There was 1 failed login attempt since the last successful login.
Last login: Thu Jul 2 16:57:27 2020 from 192.168.171.1
[root@master ~]# ssh slave1
Last login: Thu Jul 2 17:02:59 2020 from 192.168.171.1
[root@slave1 ~]# ssh slave2
Last login: Thu Jul 2 17:03:29 2020 from 192.168.171.1
#配置hosts环境
[root@manager ~]# vim /etc/hosts
192.168.171.150 manager
192.168.171.151 master
192.168.171.152 slave1
192.168.171.153 slave2
[root@manager ~]# scp /etc/hosts root@192.168.171.151:/etc/
[root@manager ~]# scp /etc/hosts root@192.168.171.152:/etc/
[root@manager ~]# scp /etc/hosts root@192.168.171.153:/etc/
二、配置mysql半同步复制
为了尽可能的减少主库硬件损坏宕机造成的数据丢失,因此在配置MHA的同时建议 配置成MySQL的半同步复制。
注:mysql半同步插件是由谷歌提供,具体位置/usr/local/mysql/lib/plugin/下:
一个是master用的semisync\_master.so;
一个是slave用的semisync\_slave.so;
分别在主从节点上安装相关的插件(master, Candicate master,slave)
#检测数据库是否支持动态载入
mysql>show variables like '%have\_dynamic%';
+----------------------+-------+
| Variable\_name | Value |
+----------------------+-------+
| have\_dynamic\_loading | YES | # 显示yes表示支持
+----------------------+-------+
1 row in set (0.00 sec)
#所有mysql数据库服务器,安装半同步插件(semisync\_master.so,semisync\_slave.so)
#要切记是所有mysql数据库服务器上都需要安装,这里我就在这写了一台该怎么安装
mysql>INSTALL PLUGIN rpl\_semi\_sync\_master SONAME 'semisync\_master.so';
Query OK, 0 rows affected (0.01 sec)
# 1200页Java架构面试专题及答案
小编整理不易,对这份**1200页Java架构面试专题及答案**感兴趣劳烦帮忙**转发/点赞**


# 百度、字节、美团等大厂常见面试题

1714429289280)]
[外链图片转存中...(img-u84eknS2-1714429289280)]
# 百度、字节、美团等大厂常见面试题
[外链图片转存中...(img-GO1Ual5l-1714429289280)]
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.youkuaiyun.com/topics/618154847)收录**