专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

mysql 百万 查询,如何设计和实现高可用的MySQL_数据库

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 12:34:40       共计:3588 浏览
mysql 百万 查询,如何设计和实现高可用的MySQL?

有关数据库高可用实现,分别以主流的Oracle、Mysql的实现方式来进行阐述。

为了解决数据库的单点故障,提供系统的整体可用性,存在以下两种技术路线: 路线1:基于传统数据库的高可用集群,主要包括共享存储(Share-Storage)、全共享(Share-Everything)和无共享(Share-Nothing)等; 路线2:基于NewSQL数据库的高可用架构,如谷歌的Spanner/F1数据库、阿里的OceanBase分布式数据库。

MySQL主从集群

基于“Share-Nothing架构”的数据库集群,具备数据冗余,能快速实现主备切换,具有更高的可用性。

在保证数据一致性、完整性及高可用性的前提下,采用MySQL半同步复制+MHA复制管理工具的方案。

如上图所示,本方案采用MySQL一主多从的架构方式,主节点提供数据的读写服务,从节点提供数据的只读服务,主从节点间通过MySQL的主从复制机制来单向同步数据。另外,将MHA Manager单独部署到一台服务器,来管理MySQL集群,控制Master节点的故障切换,保证整个集群的高可用。

MHA(Master High Availability)负责MySQL的故障切换和主从提升等功能。在MySQL故障切换过程中,MHA能做到在0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能在最大程度上保证数据的一致性,以达到真正意义上的高可用。

该软件由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点)。MHA Manager可以单独部署在一台独立的机器上管理多个Master-Slave集群,也可以部署在一台Slave节点上。MHA Node运行在每台MySQL服务器上,MHA Manager会定时探测集群中的Master节点,当Master出现故障时,它可以自动将最新数据的Slave提升为新的Master,然后将所有其他的Slave重新指向新的Master。整个故障转移过程对应用程序完全透明。

2. Oracle RAC集群

基于“Share-Everything架构”的数据库集群,不仅共享存储,还共享缓存。

RAC通过不同的节点使用一个或者多个Oracle实例(Instance)与一个数据库(Database)连接,该数据库存放于多个节点的共享存储(Share Storage)上,通过高速缓存合并技术使得集群中的每个节点可以通过高速集群互联高效的同步其内存高速缓存,从而最大限度地减低磁盘IO,并且自动并行处理及均匀分布负载,当其中一个节点发生故障时可以自动容错和恢复能力来实现节点的故障切换(Failover),从而保证数据库的高可用性。

RAC架构的软、硬件结构:

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:mysql csv 查询,二维码序列号递增怎么设置_数据库 | ·下一条:mysql in()查询,mysqlin子查询怎么用_数据库

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有