五种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机时间会大大减少。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |