MySQL复制是一个非常简单而有方便进行架构扩展的功能,可以说是运维必备,我们通过对主从进行不同的组合,可以满足我们相应的需求。


分享目录:

  • 一主一从,高可用

  • 一主一从,读写分离

  • 一主多从,读写分离

  • 一主多从,负载均衡

  • 主主复制,双写

  • 主主复制,单写

  • 双主双从


1.一主一从,高可用

 架构说明:最传统的一主一从,如果主库发生故障,手动将从库提升为主库,从库仅用于故障恢复。


2.一主一从,读写分离


 架构说明:还是一主一从,在客户端实现读写分离,不过需要注意主从延时的情况。

小技巧:在写比较度的表上可以在Master不建立索引,而在Slave端来建立索引。

3.一主多从,读写分离


 架构说明:和一主一从类似,在读请求比较多的情况下,可以增加MySQL从节点。

小技巧:可以在客户端实现多个从节点的轮询和权重的设置。

4.一主多从,负载均衡

 架构说明:在对读需求场景比较多的情况下,为了不频繁的对客户端进行配置变更,可以在从库前端放置负载均衡。不过在slave比较多的时候。主从复制也会给MySQLMaster带来一些性能上和带宽上的压力。

小技巧:给Slave分配不同的角色。例如之前公众号文章说的延迟从库、灾备从库、数据仓库等。

5.主主复制,双写

 架构说明:主主复制其实就是MySQL的双向复制,两台机器互为主从,双主可以同时写,不过要处理好自增ID重复问题,例如设置使用奇偶插入 。

6.主主复制,单写

架构说明:还是主主复制,不过这次单写,也就是双主当主从。既可以保证写的高可用,又可以保证读的高可用。

小技巧:这个是两台机器的最佳方案哦。

7. 双主双从

 架构说明:在主主复制,单写的时候。如果一个主宕机,那么就读写另外一个主。可读的节点就剩下了一个。对于读需求比较多的业务可能会有问题,那么双主双从就可以解决这个问题。

小技巧:复杂的架构带的肯定是运维的难题哦。

好了,基于复制的扩展先写到这里,其实也可以使用MySQL Proxy替代客户端做的读写分离,不过一直没有生产使用过。北京天气不错,该出去转转了。如果觉得可以读,请转发和关注哦。

分享嘉宾


赵舜东

江湖人称赵班长,曾在武警某部负责指挥自动化的架构和运维工作,2008年退役后一直从事互联网运维工作。曾带团队负责国内某电商的运维工作,SaltStack中国用户组发起人、《saltstack入门与实践》作者,《运维知识体系》作者。

趁现在,关注我们



欢迎关注“互联网架构师”,我们分享最有价值的互联网技术干货文章,助力您成为有思想的全栈架构师,我们只聊互联网、只聊架构,不聊其他!打造最有价值的架构师圈子和社区。

本公众号覆盖中国主要首席架构师、高级架构师、CTO、技术总监、技术负责人等人 群。分享最有价值的架构思想和内容。打造中国互联网圈最有价值的架构师圈子。

  • 长按下方的二维码可以快速关注我们

  • 如想加群讨论学习,请点击右下角的“加群学习”菜单入群

MySQL基于复制的架构方案相关推荐

  1. MySQL高可用MHA架构方案

    一.完整的MHA的架构方案 二.MHA故障发现与转移过程 MHA在启动的时候会有前置检查 MHA会每3s向主节点发送一个select 1 的sql语句,看主节点能不能执行成功,并且把1返回,如果能正常 ...

  2. Mysql组复制(MGR)——技术细节

    本文提供mysql组复制相关的更多技术细节. 一. 组复制插件架构 Mysql组复制是一个mysql插件,且其构建于已有mysql复制架构之上,其利用了类似二进制日志,基于行的日志及全局事务标识符等的 ...

  3. mysql复制架构迁移到pxc_mysql复制(高可用架构方案的基础)

    mysql复制:把一个数据库实例上所有改变复制到另外一个数据库库服务器实例的过程 特点: 1.没有改变就无所谓复制 ;改变是复制的根本与数据源 2.所有的改变:是指可以复制全部改变,也可以复制部分改变 ...

  4. 基于RHEL6.0的mysql服务器复制的主主架构实现

    基于RHEL6.0的mysql服务器复制的主主架构实现 说明:本文选用172.16.22.1和172.16.22.3作为主服务器 两个主服务器的软件版本应相同 两个主服务器server-id 应不同 ...

  5. MySQL 半同步复制+MMM架构

    介绍 上篇文章介绍了MMM架构的实现方法,但是上篇文章的MMM方案的复制是异步复制,异步复制的主要问题在于当主从存在延时时如果主机出现了故障导致了主从切换时这时将会存在数据丢失:mysql为了解决异步 ...

  6. MySQL架构方案 - Scale Out Scale Up.

    MySQL架构方案 Scale Out:横向扩展,增加处理节点提高整体处理能力 Scale Up:纵向扩展,通过提升单个节点的处理能力达到提升整体处理能力的目的 Replication MySQL的r ...

  7. Heartbeat+DRBD+MySQL高可用架构方案与实施过程细节 【转】

    文章出处:Heartbeat+DRBD+MySQL高可用架构方案与实施过程细节 [转]             mysql数据库高可用高扩展性架构方案实施[原] Heartbeat+DRBD+MySQ ...

  8. MySQL双主(主主)架构方案

    在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果是双主或者多主,就会增加mysql入 ...

  9. MySQL数据库的优化(下)MySQL数据库的高可用架构方案

    [51CTO独家特稿]如果单MySQL的优化始终还是顶不住压力时,这个时候我们就必须考虑MySQL的高可用架构(很多同学也爱说成是MySQL集群)了,目前可行的方案有: 一.MySQL Cluster ...

  10. mysql keepalived双主双活_mysql高可用架构方案之中的一个(keepalived+主主双活)

    Mysql双主双活+keepalived实现高可用 文件夹 1.前言... 4 2.方案... 4 2.1.环境及软件... 4 2.2.IP规划... 4 2.3.架构图... 4 3.安装设置MY ...

最新文章

  1. Asp.Net 创建MetaWeblog API
  2. 快速开发基于 HTML5 网络拓扑图应用--入门篇(二)
  3. 解决Cannot resolve method ‘createDataSource‘ in ‘DruidDataSourceFactor
  4. 搭建XSS (跨网站指令码) 测试平台
  5. 【基础】pandas中apply与map的异同
  6. java日志模块_Java源码初探_logging日志模块实现
  7. mysql 主从 跳过_mysql主从同步如何跳过错误
  8. python读取坐标文本文件_Python 实现文件读写、坐标寻址、查找替换功能
  9. 简易的实现对象内存池
  10. 我的iPhone+Mac+Omnifocus实践GTD和ZTD的几点心得
  11. redis win连接以及配置连接密码
  12. 数据库优化的几种方法
  13. API Guides Contacts Provider (二)
  14. python实现指纹识别毕业论文_指纹识别算法实现-毕业论文
  15. Android原生支持组件编译,从0开始编译android类原生系统
  16. 智能衣橱控制系统的设计
  17. Ubuntu10.10下安装Tor,PolipoVidalia
  18. 文件名太长无法删除怎么办?
  19. 【HNU分布式与云计算系统】MPI实现矩阵乘矩阵运算
  20. yDAI受创 Curve“喜”收意外之财

热门文章

  1. 23种设计模式之代理模式(Proxy)
  2. 浅谈SEO翻倍提升网站流量
  3. 两道关于前缀和的算法题
  4. [BI项目记]-搭建代码管理环境之创建团队项目
  5. SWT/JFace常用组件----容器类
  6. 全局变量的声明和定义 以及dll中全局变量的导出
  7. mysql安装及常见设置
  8. 苹果mac图片处理软件 :Photoshop
  9. 如何在 Mac 上使用任务控制空间?
  10. Mac电脑风扇转速调节工具Macs Fan Control