MySQL高可用之MHA_jqu219,2024年最新架构师花费近一年时间整理出来的Linux运维核心知识

本文详细描述了如何在Linux系统中进行SSH无交互登录,配置SSH密钥分发,以及如何设置MySQL的半同步复制以减少数据丢失。还分享了如何在多台主机间复制配置文件和安装MySQL半同步插件的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

| |
±----------------+
[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)
mysql>INSTALL PLUGIN rpl_semi_sync_slave SONAME ‘semisync_slave.so’;
Query OK, 0 rows affected (0.00 sec)
#检查Plugin是否已正确安装
mysql> show plugins; # 可以再最后两行看到如下内容
| rpl_semi_sync_master | ACTIVE | REPLICATION | semisync_master.so | GPL |
| rpl_semi_sync_slave | ACTIVE | REPLICATION | semisync_slave.so | GPL |
#也可以使用如下命令检查
mysql>select * from information_schema.plugins;
#查看半同步相关信息
mysql>show variables like ‘%rpl_semi_sync%’;
±------------------------------------------±-----------+
| Variable_name | Value |
±------------------------------------------±-----------+
| rpl_semi_sync_master_enabled | OFF |
| rpl_semi_sync_master_timeout | 10000 |
| rpl_semi_sync_master_trace_level | 32 |
| rpl_semi_sync_master_wait_for_slave_count | 1 |
| rpl_semi_sync_master_wait_no_slave | ON |
| rpl_semi_sync_master_wait_point | AFTER_SYNC |
| rpl_semi_sync_slave_enabled | OFF |
| rpl_semi_sync_slave_trace_level | 32 |
±------------------------------------------±-----------+
8 rows in set (0.00 sec)
#上方所示内容可以看到半同复制插件已经成功安装,只是还没有启用,所以是off


修改my.cnf文件,配置主从同步  
 注:若主MYSQL服务器已经存在,只是后期才搭建从MYSQL服务器,在置配数据同步前应先将主 MYSQL服务器的要同步的数据库拷贝到从MYSQL服务器上(如先在主MYSQL上备份数据库,再用备份 在从MYSQL服务器上恢复)



#master主机
[root@master ~]# vim /etc/my.cnf
server-id = 1
log-bin = mysql-bin
binlog_format = mixed
log-bin-index = mysql-bin.index
rpl_semi_sync_master_enabled = 1 # 1表示启用,0表示关闭,slave同样

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
img

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

的动力!**

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-o7F6eMF1-1712972147719)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值