今天继续给大家介绍MySQL的相关知识,本文主要内容是MySQL MHA架构的基本知识。

一、MySQL MHA简介

MySQL MHA,即Master High Availability,即MySQL高可用,是一个MySQL主从架构下实现故障切换和主从提升的解决方案。在MySQL主从同步架构中,当部分主库发生故障后,MHA能够在0-30秒时间内完成数据库的故障切换工作,并且尽最大努力保持数据一致性。
目前MHA主要支持一主多从的架构,在搭建MHA时至少要有一个Master主库和两个Slave从库,MHA架构支持任何存储引擎。

二、MySQL MHA故障切换工作原理

在MySQL MHA检测到MySQL架构中MySQL主库发生故障后,MHA试图从宕机的MySQL主库上保存二进制日志,最大程度的保证数据不会丢失。并选择一个Slave从库,将其提升为新的MySQL主从架构中的主库,并设置其他的Slave从库指向新的MySQL主库。具体过程如下:
1、MySQL MHA试图从宕机崩溃的MySQL主库中保存二进制日志。
2、MySQL MHA试图识别数据最新的Slave。
3、将该Slave数据库的中继日志同步到其他的从库,保证新的MySQL主从同步架构中数据的一致性。
4、应用从Master中保存的二进制日志。
5、将一个Slave提升为新的master。
6、控制其他Slave指向新的master。

三、MySQL MHA工具包简介

MySQL MHA由MySQL Manager(管理节点)和MySQL Node(数据节点)组成,数据节点部署在每一台MySQL数据库上,管理节点部署在一台独立的机器上,由管理节点负责架空数据节点的状态,当发现数据节点宕机时,管理节点会立即控制数据节点进行故障切换相关工作。
在安装MySQL MHA管理节点后,设备上会存在以下工具包,这些工具包及其作用如下:
1、masterha_check_ssh
负责检查MHA的SSH配置链接情况
2、masterha_check_repl
检查MySQL主从同步的复制情况
3、masterha_manager
启动MySQL MHA
4、masterha_check_status
检测当前MHA的状态
5、masterha_master_switch
自动或者手动控制MHA故障转移
6、masterha_conf_host
添加或者删除配置的server信息
同样的,在安装MySQL MHA数据节点后,设备上还会存在以下工具包,这些工具包及其作用如下:
1、save_binary_logs
用于保存或复制master的二进制日志
2、apply_diff_relay_logs
用于识别差异的中继日志事件,并将差异的事件应用于其他的slave
3、purge_relay_logs
清除中继日志
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

MySQL MHA详解(一)——基本原理相关推荐

  1. mysql 实例复制_MYSQL教程MySQL 复制详解及简单实例

    <MysqL教程MysqL 复制详解及简单实例>要点: 本文介绍了MysqL教程MysqL 复制详解及简单实例,希望对您有用.如果有疑问,可以联系我们. MysqL 复制详解及简单实例 主 ...

  2. pandas读写MySQL数据库详解及实战

    pandas读写MySQL数据库详解及实战 SQLAlchemy是Python中最有名的ORM工具. 关于ORM: 全称Object Relational Mapping(对象关系映射). 特点是操纵 ...

  3. Mysql Explain 详解

    Mysql Explain 详解 一.语法 explain < table_name > 例如: explain select * from t3 where id=3952602; 二. ...

  4. MySQL存储过程详解 mysql 存储过程

    mysql存储过程详解 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的S ...

  5. mysql存储过程详解[转]

    mysql存储过程详解[转] 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功 ...

  6. mysql-win安装教程,WINDOWS下安装MYSQL教程详解

    1.下载安装包 2.配置环境变量 2.1 解压所下载的压缩包 2.2 环境变量 win 10 电脑 这么进去 3.生成data文件 在你解压的目录下,eg:F:\Program Files\mysql ...

  7. MySQL Explain详解,分析语句为何运行慢

    MySQL Explain详解 在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语 ...

  8. 史上最简单MySQL教程详解(进阶篇)之存储过程(一)

    史上最简单MySQL教程详解(进阶篇)之存储过程(一) 史上最简单MySQL教程详解(进阶篇)之存储过程(一) 什么是存储过程 存储过程的作用 如何使用存储过程 创建存储过程 DELIMITER改变分 ...

  9. 史上最简单MySQL教程详解(进阶篇)之存储引擎介绍及默认引擎设置

    什么是存储引擎? MySQL存储引擎种类 MyISAM 引擎 InnoDB引擎 存储引擎操作 查看存储引擎 存储引擎的变更 修改默认引擎 什么是存储引擎? 与其他数据库例如Oracle 和SQL Se ...

  10. Spring事务管理详解_基本原理_事务管理方式

    Spring事务管理详解_基本原理_事务管理方式 1. 事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,使用JDBC的事务管理机制,就是利用java.sql.Connection对象 ...

最新文章

  1. 英雄联盟显示服务器连接异常 即将退出,win7系统玩英雄联盟提示服务器连接异常即将退出...
  2. 多分辨率图像的快速查询
  3. vooc是什么快充协议_5G时代除了网速,快充同样重要!
  4. sso和oauth2.0的简单了解学习
  5. qt ui指针和本类对象_您需要了解的有关UI设计的形状和对象的所有信息
  6. 在网络中配置思科交换机
  7. python中spark有什么功能_Spark SQL是什么,提供的主要功能有哪三种?
  8. UVA 11992 - Fast Matrix Operations(段树)
  9. 【Opencv系列】之显示图像以及使用鼠标截取图像局部区域进行放大
  10. RBF(径向基)神经网络
  11. 电路计算机辅助设计上海电力学院,上海电力学院电路计算机辅助设计1.doc
  12. select、poll、epoll区别总结
  13. 计算机wifi共享怎么设置,电脑怎么共享wifi热点 电脑设置wifi热点教程
  14. 如何编写GIMP插件(三)
  15. 软件企业管理——无为而无不为
  16. 基于深度学习的菠萝实时三维坐标定位项目
  17. mysql 签到_签到功能,用mysql还是redis?
  18. eclipse git 取远程代码_【JAVA】Eclipse中使用git进行pull远程代码
  19. 单片机双字节数乘法运算实验_单片机入门——单片机的基本构成及工作原理(1)...
  20. typescript 中 public private protect 区别

热门文章

  1. 每日算法系列【LeetCode 523】连续的子数组和
  2. 基于DEAP库的python进化算法-2.进化算法各元素的DEAP实现
  3. 深度学习2.0-15.随机梯度下降之梯度下降简介
  4. 拒绝“脏”数据——数据质量评估深入剖析
  5. 应用系统接入接口开发
  6. 设置内核的运行环境之隔离的应用程序
  7. Python中[::-1]实现翻转列表的原理
  8. 【影像学基本知识】T1, T2 and PD weighted imaging
  9. android自定义控件动态,GitHub - itrenjunhua/WaveView: Android自定义控件实现动态百分比水波纹效果...
  10. map中key值带‘-’转json_h5模型转savedModel + tf_serving部署采坑记录