MySQL MHA详解(一)——基本原理
今天继续给大家介绍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详解(一)——基本原理相关推荐
- mysql 实例复制_MYSQL教程MySQL 复制详解及简单实例
<MysqL教程MysqL 复制详解及简单实例>要点: 本文介绍了MysqL教程MysqL 复制详解及简单实例,希望对您有用.如果有疑问,可以联系我们. MysqL 复制详解及简单实例 主 ...
- pandas读写MySQL数据库详解及实战
pandas读写MySQL数据库详解及实战 SQLAlchemy是Python中最有名的ORM工具. 关于ORM: 全称Object Relational Mapping(对象关系映射). 特点是操纵 ...
- Mysql Explain 详解
Mysql Explain 详解 一.语法 explain < table_name > 例如: explain select * from t3 where id=3952602; 二. ...
- MySQL存储过程详解 mysql 存储过程
mysql存储过程详解 1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的S ...
- mysql存储过程详解[转]
mysql存储过程详解[转] 1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功 ...
- mysql-win安装教程,WINDOWS下安装MYSQL教程详解
1.下载安装包 2.配置环境变量 2.1 解压所下载的压缩包 2.2 环境变量 win 10 电脑 这么进去 3.生成data文件 在你解压的目录下,eg:F:\Program Files\mysql ...
- MySQL Explain详解,分析语句为何运行慢
MySQL Explain详解 在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语 ...
- 史上最简单MySQL教程详解(进阶篇)之存储过程(一)
史上最简单MySQL教程详解(进阶篇)之存储过程(一) 史上最简单MySQL教程详解(进阶篇)之存储过程(一) 什么是存储过程 存储过程的作用 如何使用存储过程 创建存储过程 DELIMITER改变分 ...
- 史上最简单MySQL教程详解(进阶篇)之存储引擎介绍及默认引擎设置
什么是存储引擎? MySQL存储引擎种类 MyISAM 引擎 InnoDB引擎 存储引擎操作 查看存储引擎 存储引擎的变更 修改默认引擎 什么是存储引擎? 与其他数据库例如Oracle 和SQL Se ...
- Spring事务管理详解_基本原理_事务管理方式
Spring事务管理详解_基本原理_事务管理方式 1. 事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,使用JDBC的事务管理机制,就是利用java.sql.Connection对象 ...
最新文章
- 英雄联盟显示服务器连接异常 即将退出,win7系统玩英雄联盟提示服务器连接异常即将退出...
- 多分辨率图像的快速查询
- vooc是什么快充协议_5G时代除了网速,快充同样重要!
- sso和oauth2.0的简单了解学习
- qt ui指针和本类对象_您需要了解的有关UI设计的形状和对象的所有信息
- 在网络中配置思科交换机
- python中spark有什么功能_Spark SQL是什么,提供的主要功能有哪三种?
- UVA 11992 - Fast Matrix Operations(段树)
- 【Opencv系列】之显示图像以及使用鼠标截取图像局部区域进行放大
- RBF(径向基)神经网络
- 电路计算机辅助设计上海电力学院,上海电力学院电路计算机辅助设计1.doc
- select、poll、epoll区别总结
- 计算机wifi共享怎么设置,电脑怎么共享wifi热点 电脑设置wifi热点教程
- 如何编写GIMP插件(三)
- 软件企业管理——无为而无不为
- 基于深度学习的菠萝实时三维坐标定位项目
- mysql 签到_签到功能,用mysql还是redis?
- eclipse git 取远程代码_【JAVA】Eclipse中使用git进行pull远程代码
- 单片机双字节数乘法运算实验_单片机入门——单片机的基本构成及工作原理(1)...
- typescript 中 public private protect 区别
热门文章
- 每日算法系列【LeetCode 523】连续的子数组和
- 基于DEAP库的python进化算法-2.进化算法各元素的DEAP实现
- 深度学习2.0-15.随机梯度下降之梯度下降简介
- 拒绝“脏”数据——数据质量评估深入剖析
- 应用系统接入接口开发
- 设置内核的运行环境之隔离的应用程序
- Python中[::-1]实现翻转列表的原理
- 【影像学基本知识】T1, T2 and PD weighted imaging
- android自定义控件动态,GitHub - itrenjunhua/WaveView: Android自定义控件实现动态百分比水波纹效果...
- map中key值带‘-’转json_h5模型转savedModel + tf_serving部署采坑记录