mysql各种集群的优缺点

1.主从架构:只是有数据备份的功能;

2.主主互备+keepalived:实现数据备份加高可用;

3.主主互备,主主下面分别挂个从;

4.A和B主主互备,把从库都挂到B下,减少IO问题;

5.MMM架构,perl编写,基于mysql主从复制,成熟高可用集群方案,由一个管理端(monitor)和多个代理端(aget)构成

优点:监控所有Master节点及Slave节点状态,当master节点出现故障,会把vip自动转移到健康节点上;更重要的是当Master节点发生故障,会自动将后端Slave节点转向备用的Master节点继续同步复制,切换过程不需要人工干预;

缺点:对ip,服务器数量有要求(至少两台服务器,2个真实ip,3个vip);业务繁忙,数据量大的时候不是很稳定,会出现复制延时,切换失效等问题;所以MMM方案不适合应用于对数据安全性要求很高,并读写频繁的环境中。

数据量大的时候,会有主从数据不同步的问题;

6.MHA架构,搭建起来比较麻烦,至少三台机器,淘宝进行过二次开发,可以用两台机器;

读写分离中间件:

7.mysqlproxy:通过lua脚本实现的读写分离,不太稳定,官网不建议用;

8.Amoeba:致力于mysql分布式数据库前端代理层,它主要在应用层,访问mysql的时候充当SQL路由器的功能,依据用户事先设置的规则,将SQL请求发送到特定的数据库上执行。基于此可以实现负载均衡、读写分离、高可用性等需求。Amoeba相当于一个SQL请求的路由器,目的是为负载均衡、读写分离、高可用性提供机制,而不是完全实现它们。

mysql各种集群的优缺点的更多相关文章

  1. MySQL分布式集群之MyCAT(转)

    原文地址:http://blog.itpub.net/29510932/viewspace-1664499/ 隔了好久,才想起来更新博客,最近倒腾的数据库从Oracle换成了MySQL,研究了一段时间 ...

  2. MySQL数据库集群进行正确配置步骤

    MySQL数据库集群进行正确配置步骤 2010-06-09 10:47 arrowcat 博客园 字号:T | T 我们今天是要和大家一起分享的是对MySQL数据库集群进行正确配置,我前两天在相关网站 ...

  3. MySQL Cluster 集群

    本文转载 http://www.cnblogs.com/gomysql/p/3664783.html MySQL Cluster是一个基于NDB Cluster存储引擎的完整的分布式数据库系统.不仅仅 ...

  4. Facebook揭密:如何让MySQL数据库集群自主运行

    Facebook运行着全球最大的MySQL数据库集群,该集群分布在两个大洲上的多个数据中心中数以千计的服务器上.让人不解的是,Facebook只动用了一个很小的团队来管理这个庞大的MySQL数据库集群 ...

  5. 基于keepalived搭建MySQL热机集群

    背景 MySQL的高可用方案一般有如下几种: keepalived+双主,MHA,MMM,Heartbeat+DRBD,PXC,Galera Cluster 比较常用的是keepalived+双主,M ...

  6. 如何搭建一个 MySQL 分布式集群

    1.准备集群搭建环境 使用6台虚拟机来搭建 MySQL分布式集群 ,相应的实验环境与对应的MySQL节点之间的对应关系如下图所示: 管理节点(MGM):这类节点的作用是管理MySQLCluster内的 ...

  7. MySQL分布式集群之MyCAT(三)rule的分析【转】

    首先写在最前面,MyCAT1.4的alpha版本已经发布了,这里面修复了不少的bug,也完善了一细节,之前两篇博客已经做了一些修改 ---------------------------------- ...

  8. MySQL分布式集群之MyCAT(二)【转】

    在第一部分,有简单的介绍MyCAT的搭建和配置文件的基本情况,这一篇详细介绍schema的一些具体参数,以及实际作用        首先贴上自己测试用的schema文件,双引号之前的反斜杠不会消除,姑 ...

  9. MySQL分布式集群之MyCAT(一)简介【转】

    隔了好久,才想起来更新博客,最近倒腾的数据库从Oracle换成了MySQL,研究了一段时间,感觉社区版的MySQL在各个方面都逊色于Oracle,Oracle真的好方便!好了,不废话,这次准备记录一些 ...

随机推荐

  1. HTML中a标签的锚点

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. springBean获取的几种方法

    1.通过FileSystemApplicationContext来获取(不常用,因为要spring配置文件的绝对路径) 2.通过ClassPathXmlApplicationContext来获取(常用 ...

  3. Netty官方示例

    一.DEMO 官方并没有使用Hello World来作为一个例子,而是采用RFC的DISCARD,这个协议定义了就是接收到请求后什么也不干. 第一步编写DiscardServerHandler类: p ...

  4. 使用Monkey对apk做稳定性测试

    认识Monkey 官方文档:https://developer.android.com/studio/test/monkey.html 什么是Monkey? Monkey是Android中的一个命令行 ...

  5. appium自动化测试(二)

    一. 获取应用包名和入口activity 获取应用包名和入口activity:aapt命令 aapt目录: 安卓sdk的build-tools目录下(如果要在cmd里直接运行,要配置环境变量,否则需要 ...

  6. iOS自动化探索(四)自动化测试框架pytest - 安装和使用

    自动化测试框架 - pytest pytest是Python最流行的单元测试框架之一, 帮助更便捷的编写测试脚本, 并支持多种功能复杂的测试场景, 能用来做app测试也能用作函数测试 官方文档: ht ...

  7. java继承的一些问题

    如果在父类中,你声明了一个静态变量. 然后你有两个子类继承了这个父类.我们想看看这两个子类调用继承的父类的类变量a是不是同一个值. 这时候注意,我们在子类的时候不能重写static int a = a ...

  8. EL表达式 分割字符串 ,forEach定次循环

    后台取出来的是字符串  以 a,b,c,   的形式  前台要将字符串中的“,”去掉 ,并forEach重新拼接 list.labelsName不用加${} <c:set value=" ...

  9. win+D可以最小化所有窗口,显示桌面 win+E可以快速打开我的电脑 这两个对我来说非常常用,要用熟练,节约时间

    win+D可以最小化所有窗口,显示桌面   win+E可以快速打开我的电脑

  10. 深入浅出Eclipse Modeling Framework (EMF)

    Eclipse Modeling Framework (EMF),简单的说,就是Eclipse提供的一套建模框架,可以用EMF建立自己的UML模型,设计模型的XML格式或编写模型的java代码.EMF ...