精华内容
下载资源
问答
  • Mysql 高可用

    2020-08-06 11:53:19
    Mysql 高可用怎么保证?基础就是主备切换逻辑。 摘要:(三句话概括)

    Mysql 高可用怎么保证?基础就是主备切换逻辑。

    摘要:(三句话概括)

    展开全文
  • mysql高可用

    2015-05-31 18:05:14
    mysql高可用,群集分发实现负载均衡。
  • MySQL高可用集群环境搭建01、MySQL高可用环境方案02、MySQL主从复制原理03、MySQL主从复制作用04、在Linux环境上安装MySQL05、在MySQL集群环境上配置主从复制06、MySQL高可用集群带来的问题07、MySQL读写分离MyCat...

    MySQL高可用集群环境搭建

    01、MySQL高可用环境方案

    02、MySQL主从复制原理

    03、MySQL主从复制作用

    04、在Linux环境上安装MySQL

    05、在MySQL集群环境上配置主从复制

    06、MySQL高可用集群带来的问题

    07、MySQL读写分离MyCat使用

    08、分表分库插件ShardingJdbc

    09、MySQL数据库索引底层原理(重点)

    10、MySQLSQL语句性能优化

    MySQL数据库简单介绍

    MySQL作为世界上使用最为广泛的数据库之一,免费是其原因之一。但不可忽略的是它本身的功能的确很强大。随着技术的发展,在实际的生产环境中,由单台MySQL数据库服务器不能满足实际的需求。此时数据库集群就很好的解决了这个问题了。采用MySQL分布式集群,能够搭建一个高并发、负载均衡的集群服务器(这篇博客暂时不涉及)。在此之前我们必须要保证每台MySQL服务器里的数据同步。数据同步我们可以通过MySQL内部配置就可以轻松完成,主要有主从(master slave )复制和主主复制。

    主从复制介绍

    相信很多同学在学习Redis的时候,已经了解过主从复制的作用。在MySQL集群环境中,可以分为主节点与从节点,通过主从复制可以实现数据备份、故障转移、MySQL集群、高可用、读写分离等。

    MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为我再Master端执行了一条SQL命令,那么在Salve端同样会执行一遍,从而达到主从复制的效果。

    如果Mysql是集群的情况下,需要考虑哪些问题?

    数据实时同步的问题

    主从复制原理

    MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为我再Master端执行了一条SQL命令,那么在Salve端同样会执行一遍,从而达到主从复制的效果。

    主机MySql 会将dmlMySql(create、update、delete、insert等,不包括查询sql) 语句写入到二进制日志文件中(binLog)。

    从库生成两个线程,一个I/O线程,一个SQL线程; i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中;

    主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog; SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,而最终数据一致;

    从节点中Sql线程的作用:就是IO线程从主机获取二进制执行文件之后,通过Sql线程进行执行二进制执行文件。sql线程依赖于IOx线程。

    主库与从库会建立长连接,如果产生网络延迟的情况下 会产生数据不同步的问题。

    注意:Mysql主从复制是Mysql本身自带的功能。myCat做读写分离 和 Nginx 比较相似。

    如果不小心数据被删除了,可以从binlog日志中恢复。

    主从复制环境配置

    服务器准备两台

    192.168.0.105  主服务器配置

    192.168.0.107  从服务器配置

    展开全文
  • MySQL高可用方案 MHA

    2018-07-26 09:43:22
    MySQL高可用方案 MHA MySQL高可用方案 MHA MySQL高可用方案 MHA
  • MySQL高可用解决方案

    2021-03-24 14:08:43
    MySQL高可用解决方案
  • 今天分享主要包括三方面内容:一是常见的MySQL高可用架构;二是分布式数据库高可用实践;三是基于keepalive的MySQL高可用改造。第一部分会介绍业界一些经典的MySQL高可用解决方案,第二部分和第三部分分别介绍网易在...

    今天分享主要包括三方面内容:一是常见的MySQL高可用架构;二是分布式数据库高可用实践;三是基于keepalive的MySQL高可用改造。第一部分会介绍业界一些经典的MySQL高可用解决方案,第二部分和第三部分分别介绍网易在分布式数据库和单节点MySQL上的高可用运维实践。

    一、常见的MySQL高可用架构

    MySQL高可用主要涉及两个方面,一是客户端如何切换,如何自动failover,二是多个MySQL节点之间如何做数据同步。业界MySQL高可用的解决方案有很多,总结起来有几类:从客户端自动切换的角度来看主要有两类:一类是基于HA同步软件的MySQL高可用,用户通过VIP访问数据库,然后第三方组件监控MySQL的状态,控制VIP的漂移。还有一类是基于API调用的MySQL高可用,把MySQL主从状态维护在客户端,应用程序可以通过API调用控制主从切换,进行数据同步。

    MySQL多节点的数据同步方案也有多种,最常用的是基于binlog的数据同步,其次还有基于共享存储的数据同步,以及第三方自己实现的数据同步协议(如Galera)。

    1、基于HA同步软件实现的高可用方案

    a15316fe3546bfe1fd36ceb11f5dd205.png

    如图所示,基于HA同步软件的MySQL高可用主要是通过VIP作为对外的访问入口,正常情况下VIP绑定在Master上,当Master出现故障后,可以将VIP切换漂移到Slave上。从而实现了一个故障failover的过程。这种基于VIP的高可用方案,最常用的数据同步方式是使用MySQL原生的binlog复制方式,当然,在成本允许的情况下,也可以选择利用SAN之类的共享存储解决方案。我们这边重点介绍的还是binlog复制或者其他软件层次的数据同步方式。

    基于HA同步软件的高可用方式的主要特点包括:

    结构简单、容易管理;

    不支持多写、standby属于备机;

    不保证数据一致性;

    入侵性小,对用户透明。

    2、MHA(Master High Availabitliy)

    下面,我们来介绍几种典型的MySQL HA同步软件。在业界应用最为广泛,技术最为成熟的HA同步软件之一是MHA。MHA全称是Master High Availability,是一种一主多从的数据库高可用解决方案。他的特点是在保障高可用自切换的前提下,最大限度的保障主从数据的一致性。

    我们先来看下MHA的架构图:

    d298805d4124a7cf6467ca36f616d98f.png

    一次完整MHA故障切换流程如下:

    保存故障的master节点的binlog日志;

    Manager查找最新更新的slave节点;

    应用差异的relay log日志到其他的slave;

    在slave节点上应用从master保存的binlog日志;

    提升一个slave为新的master;

    使其他的slave连接新的master进行复制。

    3、MMM(Master-Master Replication Manager for MySQL)

    除了MHA以外,还有一个老牌的MySQL自动切换套件MMM。

    f080e67ac9c52b6904c0a611f3fddad2.png

    与MHA相比,MMM是基于主主复制的故障切换。也就是不支持从多个slave中选择最新的一个,而是只能切换到特定的主主复制从节点。

    4、基于API调用的MySQL高可用

    刚才介绍的两种MySQL高可用解决方案,主要都是基于VIP切换的,优点是对应用程序没有入侵,但是缺点是不够灵活,而且系统的可靠性取决于HA软件本身的可靠性。如VIP通知产生问题,或者keepalive进程自己挂了,都可能导致切换出现问题。除了这种解决方案,还有一种是在客户端实现的MySQL高可用 –  基于API调用的MySQL高可用。也就是JDBC或者其他数据库驱动可以自主选择MySQL节点。这种实现方案可能使用的不是特别广泛,但是也有它自身的应用场景,它有如下特点:

    架构较重,运维相对复杂

    使用灵活,有一定开发成本

    支持数据分片、分库分表、读写分离等高级特性

    2197549deb2b24e83dfc134174aef8e9.png

    HA-JDBC 就是一种典型的基于API调用的MySQL高可用方案,它可以在应用程序中配置多个MySQL地址,由HA-JDBC实现选主/屏蔽故障节点以及多个应用程序之间的连接状态通知。HA-JDBC可以实现如下功能:

    基本的failover

    读写分离

    节点状态通知

    负载均衡

    数据同步(先写主,然后同时写多个从节点,如果主写失败,则重新选主,如果从写失败,屏蔽从) 弱一致性。

    展开全文
  • 一、Mysql高可用解决方案方案一:共享存储一般共享存储采用比较多的是 SAN/NAS 方案。方案二:操作系统实时数据块复制这个方案的典型场景是 DRBD,DRBD架构(MySQL+DRBD+Heartbeat)方案三:主从复制架构主从复制(一主...

    一、Mysql高可用解决方案

    方案一:共享存储

    一般共享存储采用比较多的是 SAN/NAS 方案。

    方案二:操作系统实时数据块复制

    这个方案的典型场景是 DRBD,DRBD架构(MySQL+DRBD+Heartbeat)

    方案三:主从复制架构

    主从复制(一主多从)

    MMM架构(双主多从)

    MHA架构(多主多从)

    方案四:数据库高可用架构

    这种方式比较经典的案例包括 MGR(MySQL Group Replication)和 Galera 等,最近业内也有一些类似的尝试,如使用一致性协议算法,自研高可用数据库的架构等。

    1.MGR(MySQL Group Replication,MySQL官方开发的一个实现MySQL高可用集群的一个工具。第一个GA版本正式发布于MySQL5.7.17中)

    2.Galera

    其它方案:MySQL Cluster和PXC

    MySQL Cluster(ndb存储引擎,比较复杂,业界并没有大规模使用)

    PXC(Percona XtraDB Cluster)

    如何选择合适的Mysql集群架构?

    MHA看业务规模和需求选择

    mysql官方的Mysql Cluster。比较复杂,团队有人、资源充足,可以考虑尝试,貌似用的人不多。

    小团队或资源不足或小项目直接建议阿里云、腾讯云

    2133f019d0e6a948341fdd3f69df86df.png

    二、部分常见方案的简介

    1.Mysql主从架构

    2013ec8aff2a6189cfc8e23f2135a064.png

    2.MHA 架构(Master High Availability Manager and Toolsfor MySQL)

    MHA(Master High Availability Manager and Toolsfor MySQL)目前在Mysql高可用方面是一个相对成熟的解决方案。它是日本的一位MySQL专家采用Perl语言编写的一个脚本管理工具,该工具仅适用于MySQLReplication 环境,目的在于维持Master主库的高可用性。

    MHA是基于标准的MySQL复制(异步/半同步)。

    MHA是由管理节点(MHA Manager)和数据节点(MHA Node)两部分组成。

    MHA Manager可以单独部署在一台独立机器,也可以部署在一台slave上。

    906293c7095c6561e2d234fce35db35e.png

    3.MMM 架构(Master-Master replication manager for Mysql)

    MMM,全称为Master-Master replication manager for Mysql,是一套支持双主故障切换和双主日常管理的脚本程序,MMM使用Perl语言开发。主要用来监控和管理MySQL Master-Master(双)复制。特别适合DBA做维护等需要主从复制的场景,通过双主架构避免了重复搭建从库的麻烦。虽然叫做双主复制,但是业务上同一时刻只允许对一个主进行写入,另一台备选主上提供部分读服务,以加速在主主切换时备选主的预热。

    (MMM好像不靠谱,据说不稳定,但还是有人在用)

    6586abe1071861c3d32dca3e54342388.png

    MMM优缺点

    优点:高可用性,扩展性好,出现故障自动切换,对于主主同步,在同一时间只提供一台数据库写操作,保证的数据的一致性。

    缺点:Monitor节点是单点,可以结合Keepalived实现高可用。

    4.DRBD 架构(MySQL+DRBD+Heartbeat)

    三、读写分离解决方案

    客户端解决方案(应用层):TDDL、 Sharding-Jdbc (常用shardding-jdbc)

    中间件解决方案(代理层):mysql proxy、mycat、altas  (常用mycat)

    fac1fa3d6c7d271d8f49a20adb4bd319.png          

    c88de424bbbbd106b7378dec7faa0400.png

    客户端解决方案的特点:

    优点:

    1、程序自动完成,数据源方便管理

    2、不需要维护,因为没用中间件

    3、理论支持任何数据库 (sql标准)

    缺点:

    1、增加了开发成本、代码有入侵

    2、不能做到动态增加数据源

    3、程序员开发完成,运维参与不了。

    中间件解决方案的特点:

    优点:

    1、数据增加了都程序没用任何影响

    2、应用层(程序)不需要管数据库方面的事情

    3、增加数据源不需要重启程序

    缺点:

    1、程序依赖中间件,导致切换数据库变的困难

    2、增加了proxy 性能下降

    3、增加了维护工作、高可用问题。

    参考:

    展开全文
  • MySQL高可用架构演进

    2019-12-17 16:50:21
    MySQL高可用架构演进
  • MySQL高可用方案

    2019-11-30 23:24:58
    MySQL高可用方案 MySQL高可用方案 MySQL高可用方案
  • DRBD+Mysql实现Mysql高可用
  • MySQL高可用解决方案_社区 MySQL高可用解决方案_社区 MySQL高可用解决方案_社区
  • mysql-MMM实现mysql高可用
  • 本资源为kubernetes集群部署mysql高可用读写分离数据库,内含所有需要的yaml文件,有需要的可进行下载
  • 阿里MySQL高可用方案
  • 金融行业MySQL高可用实践 演讲人爱可生 明溪源 全球敏捷运维峰会广州站 1 金融行业MySQL高可用方案选型 2 爱可生金融级MySQL高可用方案 目 录 CONTENTS 3 某大型国有银行MySQL高可用实践 2 全球敏捷运维峰会广州站 ...
  • 一、Mysql高可用解决方案方案一:共享存储一般共享存储采用比较多的是 SAN/NAS 方案。方案二:操作系统实时数据块复制这个方案的典型场景是 DRBD,DRBD架构(MySQL+DRBD+Heartbeat)方案三:主从复制架构主从复制(一主...
  • MySQL高可用方案大全

    2016-05-17 12:26:18
    Lvs+Keepalived+MySQL 单点写入主主同步高可用方案 Lvs+Keepalived+MySQL 单点写入读负载均衡主主同步高可用方案 Heartbeat高可用MySQL主主同步方案 Heartbeat+DRBD+MySQL高可用方案 MMM高可用MySQL方案
  • 阿里mysql 高可用方案

    2018-06-21 16:15:57
    阿里mysql 高可用方案, 内部包含了阿里TMHA的实现细节。
  • 前言:关于MySQL高可用架构其实是个老生常谈的话题,最近一位大厂的朋友在做MySQL高可用架构的设计也聊起了这个话题,于是写篇文章梳理下。目前MySQL高可用架构上大体上分为两类:一类是基于MySQL原生复制协议或...
  • Mysql高可用方案

    千次阅读 2019-04-26 09:02:04
    本次专题是MySQL高可用方案选型,这个专题想必有很多同学感兴趣。 高可用的意义以及各种不同高可用等级相应的停机时间我就不必多说了,直接进入主题。 可选MySQL高可用方案 MySQL的各种高可用方案,大多是基于...
  • MySQL高可用之DRBD

    千次阅读 多人点赞 2019-11-14 16:58:57
    目录 一、DRBD简介 1. 工作原理 2. DRBD 支持的底层设备 3. DRBD资源 4. DRBD 配置工具 5. DRBD与RAID1区别 6. DRBD与共享存储 二、DRBD安装配置 ...五、heartbeat+DRBD+mysql高可用方案 1....
  • MySQL高可用负载均衡集群部署
  • 明溪源介绍 金融行业MySQL高可用实践 1)金融行业MySQL高可用方案选型 a)MySQL Replication – MHA (MySQL5.7不支持) b)MGR + 轻量级中间件MySQL Router统一访问 2)爱可生金融级MySQL高可用方案 3)某大行核心...
  • 资源内容:第三套:MySQL数据库高可用实战(视频)|____25-常见MySQL集群高可用架构讲座03_rec.mp4|____24-常见MySQL集群高可用架构讲座02_rec.mp4|____...rec.mp4|____21-有关MySQL高可用注意及常见故障讲解_rec.mp4|...
  • 【27】基于MyCat的MySQL高可用读写分离集群实战课程下载【No215】基于MyCat的MySQL高可用读写分离集群实战课程下载 .txt
  • mysql高可用MHA

    2017-09-30 12:26:39
    mysql高可用MHA配置以及测试,mysql手动故障切换,mysql手动在线切换
  • MySQL高可用之MHA

    千次阅读 2020-07-13 07:57:19
    MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司 youshimaton(现就职于Facebook公司)开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升 的高可用...
  • 3,nfs高可用,keepalive使用脚本(自己编写)vrrp_script {},通过脚本返回的状态(根据keepalive自定)判断drbd的主从,然后飘动vip,同时再触发脚本,切换drbd的主从关系。(drbd不能自动切换)4、redis一主两从,使用...
  • 基于mycat的mysql高可用读写分离,适合mysql进阶。比较实用的技术。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 22,141
精华内容 8,856
关键字:

mysql高可用

mysql 订阅