matlab 写入 MYSQL_你想要的MySQL数据库架构都在这里

Mysql数据库现在被更多的公司在线上使用,而且是越来越火,到底有多火,可以从权威数据库排名榜来看看。

2207fe55c6ff8ecce1e336b4a33d0629.png

数据库排名top 10


从上图可以看到,Mysql数据库已经是排名第二了,离排名第一的Oracle也只是一步之遥。

要在线上使用Mysql数据库,首先肯定得了解Mysql数据库有哪些架构,这些架构都有哪些优缺点,有了比较之后,这样才能选择合适的Mysql数据库架构去契合线上的业务。

双机热备架构

680d6d04f054b8cd5ce21f45eef6769a.png

双机热备架构

这种是非常传统的双机热备高可用架构了,采用共享存储加RHCS软件,实现灾备切换。方案优点:简单,稳定方案缺点:同一时间,只有主节点提供Mysql数据库服务,备节点一直空闲,造成资源浪费,而且Mysql数据库的数据只有一份。

主从异步复制

6e31717cbbb82618e2df0a46c06319c8.png

主从异步复制

一主一从和一主多从,是Mysql数据库最常用的高可用架构了,下面就来看看这种架构的优缺点优点:
1.业务数据有多副本
2.实时灾备,非常灵活做故障切换,主数据库出现问题,可以切换到从数据库
3.实现读写分离,主库提供写服务,从库提供读服务
4.在从库做数据库备份,将业务影响降到最小

缺点:
1.由于此种架构采用主从异步复制,在灾备切换之后,会丢失部分业务数据
2.从节点不宜过多,最好不要超过5个,从节点太多,会对主库造成压力,影响业务

主从半同步

f6e0f43ee242d4eb5e6f39b348791fec.png

主从半同步

此架构是主从异步复制的升级,最大程度保证主从数据的一致性,当主从延迟不超过10秒,主从之间的数据是一致的,超过10秒,就会变成异步复制,当然这个10秒阈值是由参数(rpl_semi_sync_master_timeout)限制的。

优点:
1.增强主从复制之间数据库一致性
2.实现读写分离
3.只要主从之间还是半同步状态,主从切换,不会造成数据丢失

缺点
1.如果主从复制直接网络堵塞,或者延迟,则会导致数据库响应时间变长,影响业务。

双主半同步

d1a349f05074235a0a8e24b1b183c1bb.png

双主半同步

如果你的业务是写多,可以采用这种架构

优点
1.可以实现双写,两个节点都可以对外提供写服务
2.只要主从之间还是半同步状态,主从切换,不会造成数据丢失

缺点
1.如果主从复制直接网络堵塞,或者延迟,则会导致数据库响应时间变长,影响业务。

多源复制

778c9b25241b5f7360fb1bf5ea9a3c73.png

多源复制

当业务起量之后,就会采用分库分表,分表之后,后端有些分析查询又需要将数据汇总,这样多源复制就显得特别有用

优点
1.非常方便做数据汇聚,在分库分表的一些场景中,数据集中统计分析操作可以在1台从库服务器上实现。
2.将所有主库数据汇总到从库之后,可以做集中备份,将从库备份之后,可以不用再备份主库的数据了。

缺点
1.数据库运维变的复杂,操作稍有不慎,就会造成主从复制断开

级联复制

98d77dea83d0bcdb35e5076736973310.png

级联复制

这种架构,最长见在游戏邻域,它的读写可能达到9:1,甚至更高,所以需要创建更多的从节点,来解决读的问题,常见的一主多从架构,当从节点多了之后,会消耗主节点大量的cpu,内存和网络资源,影响业务的写操作。

优点
1.避免主节点的网络资源成为复制的瓶颈
2.将主节点的复制压力分摊下级从节点

缺点
1.增加级联层级,和复制延迟的风险点

延迟复制

6e8469e4cde13f40b489cdb6ab19b6dd.png

延迟复制

开始看到这种的朋友,估计还会奇怪,怎么还会有主动设置主从复制延迟呢,这样做,主要是给你一个删库之后,还有改过自新的机会。

优点
1.当你误删除时,能更快恢复数据。当你手抖了,或者连错库了,把线上数据给误删除了,或者误drop库、表、其他对象,都可以让延迟从库在误操作前的时间点停下,然后进行恢复。

blackhole复制

b68fe59bd9ffbdcd5856a36158c2630a.png

blackhole复制

BlackHole其实是Mysql数据库的一种存储引擎,它的作用非常的单一,就是建立主从复制,只会从主库拉去binlog日志,但是写入到此引擎表的数据均会被丢弃掉,不做任何的存储。开启了log_slave_updates参数之后,它就能把复制向下传播,和普通的级联复制是一样的。

优缺点和普通的级联复制类似,这里就不再重复了。

组复制(MGR)

0b6523f9f981c96216ed6db040a8cf46.png

组复制

MGR是mysql Group Replication简称,中文名称是Mysql组复制,MGR是MySQL官方推出的一个全新的高可用与高扩展的解决方案,提供了高可用、高扩展、高可靠的MySQL集群服务,目前只支持MYSQL5.7和mysql8.0版本。

优点
1.高一致性:基于原生复制和paxos协议的组复制技术。
2.高容错性:有自动检测机制,当出现宕机后,会自动剔除问题节点,在2N+1个节点集群中,集群 只要N +1个节点还存活着,数据库就能稳定的对外提供服务。
3.高扩展性:可以在线增加和移除节点。
4.高灵活性:可以在单主模式和多主模式自由切换。

缺点
1.MGR技术比较新,稳定性方面还需要业界验证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值