五种MySQL数据库可靠性方案的分析和比较

日期: 2008-06-02 作者:戴维 来源:TechTarget中国

  这篇文章主要从基本情况、成本、优缺点和应用场合等方面对5种MySQL的可靠性方案进行了详细的分析和比较,另外,本文对MySQL数据库的开发和管理有一定的借鉴作用。详细内容请大家参考下文:


  1、MySQL Clustering(ndb-cluster stogare)


  简介:


  MySQL公司以存储引擎方式提供的高可靠性方案,是事务安全的,实时复制数据,可用于需要高可靠性及负载均衡的场合。该方案至少需要三个节点服务器才能达到较好的效果。


  成本:


  节点服务器对RAM的需求很大,与数据库大小呈线性比例;


  最好使用千兆以太网络;


  还需要使用Dolphin公司提供的昂贵的SCI卡。


  优点:


  可用于负载均衡场合;


  可用于高可靠性场合;


  高伸缩性;


  真正的数据库冗余;


  容易维护。


  缺点:


  随着数据库的变大,对RAM的需求变得更大,因此成本很高;


  速度:


  几乎比典型的单独服务器(无千兆以太网,无SCI卡,存储引擎相关的限制少)慢10倍。


  应用场合:


  冗余,高可靠性,负载均衡


  2、MySQL / GFS-GNBD/ HA (Active/Passive)


  简介:


  如果多个MySQL服务器使用共享硬盘作为数据存储,此方案如何?


  GFS/GNBD可以提供所需的共享硬盘。


  GFS是事务安全的文件系统。同一时刻你可以让一个MySQL使用共享数据。


  成本:


  最多n台高性能服务器的成本,其中一个激活的,其他作为备份服务器。


  优点:


  高可靠性


  某种程度的冗余


  按照高可靠性进行伸缩


  缺点:


  没有负载均衡


  没有保证的冗余


  无法对写操作进行伸缩


  速度


  单独服务器的2倍。对读操作支持得较好。


  应用场合
 
  需要高可靠性的、读操作密集型的应用


  3、MySQL / DRBD / HA (Active/Passive)


  简介:


  如果多个MySQL服务器使用共享硬盘作为数据存储,此方案如何?


  DRBD可以提供这样的共享硬盘。DRBD可以被设置成事务安全的。
 
  同一时刻你可以让一个MySQL使用共享数据。


  成本:


  最多n台高性能服务器的成本,其中一个激活的,而其他则作为备份服务器。


  优点:


  高可靠性;


  一定程度的冗余;


  以高可靠性名义来看是可伸缩的。


  缺点:


  没有负载均衡


  没有保证的冗余


  在写负载方面没有伸缩性


  速度:


  在读写方面相当于单独服务器


  应用场合


  需要高可靠性、读操作密集型的应用


  4、MySQL Write Master / Multiple MySQL Read Slaves (Active/Active)


  简介:


  考虑不同的读、写DB数据库连接的情况。可以使用一台主服务器用于写操作,而采用n台从服务器用于读操作。


  成本:


  最多1台高性能写服务器,n台读服务器的成本


  优点:


  读操作的高可靠性;


  读操作的负载均衡;


  在读操作负载均衡方面是可伸缩的。


  缺点:


  无写操作的高可靠性;


  无写操作的负载均衡;


  在写操作方面无伸缩性;


  速度:


  同单独服务器;在读操作方面支持得较好


  应用场合


  读操作密集型的、需要高可靠性和负载均衡的应用。


  5、Standalone MySQL Servers(Functionally separated) (Active)


  多台功能分离的单独服务器,没有高可靠性、负载均衡能力,明显缺点太多,不予考虑。


  总结:


  MySQL官方网站推荐的HA方案是结合DRBD (本文中的方案3) 和 Replication (本文中的方案4)。假如再加上Linux Heartbeat还可实现Auto-failover功能,在此种情况下,我们会发现,down机时间会大大减少。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

戴维
戴维

相关推荐

  • 甲骨文宣布MySQL Cluster 7.4全面上市

    甲骨文公司今天宣布MySQL Cluster 7.4全面上市。MySQL Cluster是一款ACID兼容的开源事务处理型数据库,具有实时内存性能和99.999%的可用性。

  • 解读MySQL数据库的双向复制

    在主-从复制中,主机影响从机。但从数据库中的任何更改不会影响主数据库,这篇文章将帮助你实现双向复制。

  • 多种不同的MySQL数据库SSL配置

    SSL通过加密网络防止有针对性的监听。在与正确的服务器进行交互时,可以有效应对中间人攻击。本文介绍了不同的使用MySQL数据库的SSL配置方法。

  • 使用Cassandra进行.Net编程

    本文将介绍如何针对特定的架构设计实现特定的功能. 最终实现基于Dotnet Cassandra存储的应用开发。