微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

主要从基本情况、成本、优缺点和应用场合等方面对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机时间会大大减少。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐