`
wusuoya
  • 浏览: 641723 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

MySQL集群的可行方案

 
阅读更多

如果单MySQL的优化始终还是顶不住压力时,这个时候我们就必须考虑MySQL的高可用架构(很多同学也爱说成是MySQL集群)了,目前可行的方案 有: 一、MySQL Cluster 优势:可用性非常高,性能非常好。每份数据至少可在不同主机存一份拷贝,且冗余数据拷贝实时同步

如果单MySQL的优化始终还是顶不住压力时,这个时候我们就必须考虑MySQL的高可用架构(很多同学也爱说成是MySQL集群)了,目前可行的方案有:
一、MySQL Cluster
优势:可用性非常高,性能非常好。每份数据至少可在不同主机存一份拷贝,且冗余数据拷贝实时同步。但它的维护非常复杂,存在部分Bug,目前还不适合比较核心的线上系统,所以这个我不推荐。
二、DRBD磁盘网络镜像方案
优势:软件功能强大,数据可在底层快设备级别跨物理主机镜像,且可根据性能和可靠性要求配置不同级别的同步。IO操作保持顺序,可满足数据库对数据一致性 的苛刻要求。但非分布式文件系统环境无法支持镜像数据同时可见,性能和可靠性两者相互矛盾,无法适用于性能和可靠性要求都比较苛刻的环境,维护成本高于 MySQL Replication。另外,DRBD也是官方推荐的可用于MySQL高可用方案之一,所以这个大家可根据实际环境来考虑是否部署。
三、MySQL Replication
在实际应用场景中,MySQL Replication是使用最为广泛的一种提高系统扩展性的设计手段。众多的MySQL使用者通过Replication功能提升系统的扩展性后,通过 简单的增加价格低廉的硬件设备成倍 甚至成数量级地提高了原有系统的性能,是广大MySQL中低端使用者非常喜欢的功能之一,也是许多MySQL使用者选择MySQL最为重要的原因。

比较常规的MySQL Replication架构也有好几种,这里分别简单说明下
MySQL Replication架构一:常规复制架构--Master-slaves,是由一个Master复制到一个或多个Salve的架构模式,主要用于读压力大的应用数据库端廉价扩展解决方案,读写分离,Master主要负责写方面的压力。
MySQL Replication架构二:级联复制架构,即Master-Slaves-Slaves,这个也是为了防止Slaves的读压力过大,而配置一层二级 Slaves,很容易解决Master端因为附属slave太多而成为瓶劲的风险。
MySQL Replication架构三:Dual Master与级联复制结合架构,即Master-Master-Slaves,最大的好处是既可以避免主Master的写操作受到Slave集群的复制带来的影响,而且保证了主Master的单点故障。
以上就是比较常见的MySQL replication架构方案,大家可根据自己公司的具体环境来设计 ,Mysql 负载均衡可考虑用LVS或Haproxy来做,高可用HA软件我推荐Heartbeat。
MySQL Replication的不足:如果Master主机硬件故障无法恢复,则可能造成部分未传送到slave端的数据丢失。所以大家应该根据自己目前的网络 规划,选择自己合理的Mysql架构方案,跟自己的MySQL DBA和程序员多沟涌,多备份(备份我至少会做到本地和异地双备份),多测试,数据的事是最大的事,出不得半点差错,切记切记。

分享到:
评论

相关推荐

    高可用MySQL同步集群的研究与设计.pdf

    为了解决异步集群的不足,本文提出了一种基于MySQL Cluster的高可用同步集群设计方案。该方案结合开源软件Nginx和Keepalived实现客户端请求的负载均衡,分散数据库服务压力,降低响应时间。通过实际部署和测试,验证...

    linux集群应用实战

    第23讲 drbd+mysql+heartbeat+lvs可行性分析 课程目标: 了解mysql与drbd+lvs+heartbeat整合的必要性 课程内容: mysql应用需求现状与存在问题 drbd+mysql+heartbeat+lvs方案实现原理 第24讲 mysql主从复制的...

    基于Zookeeper+MHA的mysql高可用架构设计.zip

    本资料包“基于Zookeeper+MHA的mysql高可用架构设计”主要探讨了如何利用Zookeeper和MHA(Master High Availability)工具来构建一个高可靠的MySQL集群,确保即使在单个节点故障的情况下,服务也能不间断地运行。...

    基于ssm+mysql的在线收银系统源码数据库论文.docx

    本文档旨在设计和实现一个基于SSM(Spring、SpringMVC、MyBatis)和MySQL的在线收银系统数据库,旨在提供一个高效、可靠的在线收银解决方案。本系统主要使用Java语言编写,使用IDEA作为集成开发环境,MySQL作为...

    lvs+keepalived+mha+mysql架构最佳部署手册

    **MHA**(Master High Availability)作为一种成熟的MySQL高可用性解决方案,它由日本开发者Youshimaton创建,旨在为MySQL环境提供故障切换与主从升级的能力。MHA能够实现在30秒内自动完成数据库的故障切换操作,并...

    基于ganglia的集群监控软件的设计与实现大学本科毕业论文.doc

    Ganglia通过提供一套轻量级、高效率的监控解决方案,能够帮助管理员实时了解整个集群的健康状况,及时发现并解决问题,从而确保服务的稳定性和可靠性。 2. 开发环境 开发这样的系统通常涉及Linux操作系统,如Ubuntu...

    MySQL高可用浅析

    若要实现数据零丢失,Gelera集群是一个可行的方案。Gelera使用三副本策略,确保每次写操作都在三个节点上成功完成,从而实现数据的强一致性。尽管Gelera可能对MySQL代码有较大侵入,但在某些对数据完整性要求极高的...

    MySQL服务自动停止的解决方法

    不过,硬件升级并非总是可行的解决方案,特别是在预算有限或者物理空间受限的情况下。 除了硬件升级,还有一些软件层面的优化策略可以尝试: 1. **调整MySQL配置**:优化MySQL的配置文件(如 `my.cnf`),限制...

    物联网系统技术方案.docx

    Mysql集群部署增强了数据库的高可用性和可伸缩性。Nginx负载均衡则用于优化网络流量分配,确保服务的稳定性和响应速度。此外,可能还提到了其他技术,如数据加密、设备通信协议(如MQTT、CoAP等)和大数据处理工具,...

    物联网系统技术方案.doc

    - **Mysql集群部署**: 为了提高数据处理能力和可用性,采用MySQL集群技术。 - **Nginx负载均衡**: 通过Nginx进行流量分发,提高服务器响应速度和服务稳定性。 - **地图接口/工作流引擎集成/报表工具**: 集成第三方...

    计算机-mysql-基于NoSQL的空间数据云存储的研究.pdf

    通过综合分析数据存取性能,结果表明,这种基于NoSQL的空间数据云存储方案不仅高效,而且可行,能够满足GIS系统对大量空间数据快速存取和查询的需求。 云计算的兴起为空间数据云存储提供了强大的基础设施支持。通过...

    基于ssm+mysql在线读书与分享论坛源码数据库.doc

    - **高可用性**:MySQL支持多种高可用性解决方案,如主从复制、集群等。 - **高性能**:MySQL通过优化查询执行计划、索引等方式提高性能。 - **安全性**:MySQL提供了强大的安全特性,包括用户认证、权限管理等。 #...

    MySQL MyCAT安装应用经典案例实战

    - **跨节点Join的问题**:由于数据分布在不同的数据库节点上,传统的JOIN操作不再可行。MyCAT提供了模拟JOIN的功能,通过将查询结果在中间件层进行合并,从而实现跨节点的JOIN。 - **跨节点后合并排序分页问题**:...

    智慧政务云计算中心-数据库系统建设方案.docx

    选用适合政务应用的数据库管理系统,如Oracle、SQL Server或MySQL,构建主数据库、备份数据库和分布式数据库等子系统。 2.3.3 集群数据库建设优势 集群数据库能提供高可用性,当单个节点故障时,其他节点可以接管...

    RDBMS到Hadoop的迁移方案.pptx

    面对大量数据,RDBMS的垂直扩展(即增大单个服务器的存储和计算能力)不再是可行方案,而横向扩展(通过添加更多的服务器形成集群)成为主流。然而,存储和处理这些数据需要新的策略: 1. **存储问题**:冰箱放不下...

    金融信息服务平台项目技术方案.docx

    2. 架构师:设计系统架构,保证技术方案的可行性和扩展性。 3. 开发团队:包括项目经理、前端开发工程师、后台服务开发工程师、UI设计工程师和数据库开发工程师,各司其职,共同完成项目开发。 通过以上技术方案,...

    金融信息服务平台项目技术与方案.pdf

    数据库方面,选择了MySQL,其免费、灵活的存储引擎、分布式集群支持以及与Java的良好集成,使其成为成本效益高的选择。 基础技术架构中,Spring框架被选为核心,包括Spring MVC、Spring AOP和声明式事务管理,这些...

    OpenStack高可用指南.pdf

    OpenStack是一种开源的云计算平台,广泛应用于构建和管理大规模的分布式计算环境。在云计算技术中,高可用性(High ...通过社区的支持和官方文档的不断更新,OpenStack的高可用性解决方案得到了持续的改进和优化。

    汽车销售网站设计与实现-详细设计与代码实现毕业设计论文.doc

    MySQL是一个开源数据库,具有体积小、使用灵活、速度快、可横向集群的优势。 本文详细设计和代码实现了汽车销售网站,旨在提高汽车销售业的经营管理效率、工作效率和服务质量。该系统具有技术可行性和操作可行性,...

Global site tag (gtag.js) - Google Analytics