位置: 编程技术 - 正文

Oracle和MySQL的高可用方案对比分析(oracle与mysql的优缺点对比)

编辑:rootadmin

推荐整理分享Oracle和MySQL的高可用方案对比分析(oracle与mysql的优缺点对比),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:oracle和mysql性能对比,oracle和mysql比较,oracle 和 mysql,mysql和oracle哪个性能更好,mysql和oracle哪个性能更好,oracle和mysql性能对比,oracle 和 mysql,oracle 和 mysql,内容如对您有帮助,希望把文章链接给更多的朋友!

关于Oracle和MySQL的高可用方案,其实一直想要总结了,就会分为几个系列来简单说说。通过这样的对比,会对两种数据库架构设计上的细节差异有一个基本的认识。Oracle有一套很成熟的解决方案。用我在OOW上的ppt来看,是MAA的方案,今年是这个方案的周年了。

而MySQL因为开源的特点,社区里推出了更多的解决方案,个人的见解,InnoDB Cluster会是MySQL以后的高可用方案标配。

而目前来看,MGR固然不错,MySQL Cluster方案也有,PXC,Galera等方案,个人还是更倾向于MHA.

所以本文会分为几个部分来解读,先拿RAC和MHA来做一个基本的对比。

Oracle的解决方案在阿里快速发展时期支撑起了核心业务的需求。大概是这样的架构体系,看起来很庞大。里面的RAC算是一个贵族,用昂贵的商业存储,网络带宽要求极高,前端大量的小机业务还有不菲的licence费用。非常典型的IOE的经典架构。

如果要考虑异地容灾,那么资源配置要double,预算翻番。

MySQL的架构方案相对来说更加平民化,普通的pc就可以,但是数量级要高,做业务拆分,水平拆分就能够横向扩展出非常多的节点,很多大互联网公司的MySQL集群规模都是几百几百的规模,上千都不稀奇。如此之多的服务资源,发生故障的概率还是有的,保证业务服务的可持续性访问,是技术方案的关键。如果按照MHA的架构,基本上就是MHA Manager节点来负责整个集群的状态,好比一个居委会大妈,对住户的大大小小的事情都了如指掌包打听。

当然上面的说法过于笼统,我们从一些细节入手。比如先来说说网络的事情。

Oracle对于网络的要求还是很严格的,一般都是要2块物理网卡,每台服务器需要至少3个IP, Public IP,private IP,VIP,除了共享存储,至少需要2个计算节点。

private IP是节点间互信的,Public IP和VIP在一个网段,简单来说,VIP是对外的,是public IP所在网络的漂移IP,在g里面都是通过VIP来做负载均衡的,g开始有了scan-IP,原来的VIP还是保留,所以Oracle里面的网络配置要求还是很高的。抛开共享存储,搭建的核心就是网络配置了,网络通则通。

scan-IP还可以继续扩展,最多支持3个scan-ip,如下图所示

当然网络层面不只是这些,这方面的亮点Oracle就很专业了。我们有必要了解下TAF,在我的书中《Oracle DBA工作笔记》中,我这样写道:

TAF(Transparent Application Failover)是Oracle中对应用透明的故障转移,在RAC环境中使用尤其广泛。在RAC中Load Balance这块确实做了很大的改进,从g版本开始的多个VIP地址的Load Balance,到g版本中的SCAN,做了很大的简化。

而在Failover的实现中,还是有一定的使用限定,比如g中默认的SCAN-IP的实现其实默认没有Failover的选项,如果两个节点中的其中一个节点挂了,那么原有的连接中继续查询就会提示session已经断开,需要重新连接。客户端TAF主要会讨论Failover Method和Failover Type的一些简单内容。

Oracle和MySQL的高可用方案对比分析(oracle与mysql的优缺点对比)

(1)Failover Method

Failover Method的主要思路就是换取故障转移时间,或者换取资源来实现。

可以这样来理解,假设我们存在两个节点,如果某个session连接到了节点2,然而节点2突然挂了,为了更快处理Failover这种情况,Failover Method有preconnect和basic两种。

— preconnect这种预连接方式还是会占用较多的资源使用,在各个节点上会预先占用一部分额外的资源,在切换时会相对更加平滑,速度更快。

— basic这种方式,则在发生Failover时,再去切换对应的资源,中间会有一些卡顿,但是对于资源的消耗相对来说要小很多。

简单来说,basic方式会在故障发生时才去判断,而preconnect则是未雨绸缪;从实际的应用来说,basic这种方式更加通用,也是默认的故障转移方式。

(2)Failover Type

Failover Type实现更加丰富而且灵活,非常强大。这个时候控制粒度可以针对用户SQL的执行情况进行控制,有select和session两种;通过一个小例子说明一下。

比如,我们有个很大的查询在节点2上进行,结果节点2突然挂了,对于正在执行的查询,比如说有 条数据,结果刚好故障发生的时候查出了8 条,那么剩下的2 该怎么处理。

第一种方式就是使用select;即会完成故障切换,继续把剩下的2 条记录返回,当然中间会有一些上下文环境的切换,对于用户是透明的。

第二种方式是session;即直接断开连接,要求重新查询。

在g版本中借助于VIP的配置达到Load Balance+Failover的配置如下:

从这个角度来看Oracle的方案真是精细。再来看看MySQL的方案。

分布式的方案,让MySQL看起来像一把瑞士牛刀,对于网络层面的要求,几乎可以说MySQL没有什么要求,申请一主一从,那么就只需要4个IP即可(主,从,VIP,MHA_Manager(考虑一个manager节点)),一主两从是5个。

这一点上MySQL原生并不支持所谓的负载均衡,可以通过前端的业务来分流,比如使用中间件proxy,或者持续的拆分,达到一定的粒度后,通过架构设计的方式来满足需求。因为基于逻辑的复制,很容易扩展,一主多从都是很常见的,代价也不高,延迟不能说没有,只是很低,能够适应绝大部分的互联网业务需求。

而说到触发MHA切换的条件,从网络层面来看,如下的红点都是潜在的隐患,有的是网络的中断,有的是网络的延迟,发生故障的时候,保数据还是保性能稳定,都可以基于自己的需求来定制。从这一点上来说,丢失数据的概率是有的。绝对不是强一致性的无损复制。

整体来看两种方案,RAC是集中共享,除了存储层面的共享外,网络层面的组播其实也会提高节点间通信的成本,所以RAC对于网络的需求很大,如果存在延迟是很危险的,发生了脑裂就很尴尬了。MySQL MHA的方案是分布式的。支持大批量的环境,节点间通信的成本相对来说要低很多。但是从数据架构的角度来说,因为是复制的数据分布方式,所以对于存储尽管不是共享存储,但是对于存储的成本还是高于RAC(不是说存储的价格,是存储的数据量大小).

如何使用mysql完成excel中的数据生成 Excel是数据分析中最常用的工具,本篇文章通过mysql与excel的功能对比介绍如何使用mysql完成excel中的数据生成,数据清洗,预处理,以及最常见的数据分

MySQL中报错:Can’t find file: ‘./mysql/plugin.frm’的解决方法 发现问题最近在工作中发现了一个问题,这个问题就是MySQL的磁盘满了,将数据库目录data移动到/data3目录,/etc/my.cnf里面也修改了相应的datadir目录,权

Mac OS系统下mysql 5.7.安装教程图文详解 MacOSX下TAR.GZ方式安装MySQL5.7与MySQL5.6相比,5.7版本在安装时有两处不同:1:初始化方式改变,从scripts/mysql_install_db--user=mysql初始化方式变成了bin/mysqld--initializ

标签: oracle与mysql的优缺点对比

本文链接地址:https://www.jiuchutong.com/biancheng/312067.html 转载请保留说明!

上一篇:MySQL数据库设计之利用Python操作Schema方法详解(MYSQL数据库设计与应用第二版)

下一篇:如何使用mysql完成excel中的数据生成(mysql使用指南)

  • 税务ukey电子发票二维码用什么扫码
  • 金税四期对企业的六点影响
  • 房屋产权出典的由承典人作为房产税纳税义务人
  • 建筑企业有哪些
  • 无形资产摊销计算例题
  • 管理会计期末存货计算公式
  • 银行卡待报解预算收入是什么钱
  • 开票给子公司的利息收入怎么做账?
  • 工程款抵房款账务怎么做
  • 补记上年度计提所得税费用的会计分录
  • 营业账簿是什么意思
  • 不计提税费可以吗
  • 税金及附加是根据什么填列的
  • 冲销去年费用
  • 国税代开普通发票现需作废需要哪些资料?
  • 差额开票扣除额可以大概数
  • 如何批量查询发票
  • 个人所得税征收标准2023
  • 预收房款属于什么科目
  • 企业收取房屋维修费用
  • 公司注销报表怎么调
  • 收到房租发票可以抵扣吗
  • 发票产生的材料是什么
  • 资本公积和盈余公积都是从企业的净利润中提取的
  • 在建工程变更建设单位
  • win11安装失败0xc1900201
  • window11正式版什么时候出来
  • js时间格式转换时间戳
  • 获取当前位置被拒怎么办
  • 分级核算下的建议怎么写
  • avgnt.exe
  • 建筑企业安装费计入什么科目
  • 无偿划转长期股权投资
  • 销售点的增值税计算公式
  • 专家评审费可以由中标人支付吗
  • phpstudy配置
  • chat top
  • 前端面试题必问的题目
  • 礼品赠送纳税标准
  • 月末库存商品成本计算
  • 其他应收款如何平账
  • 购买仪器属于什么费用
  • 长期待摊费用的账务处理
  • 销售清单需要盖什么章子
  • 非营利组织接受捐赠收入要交企业所得税吗
  • 应交税费的账务处理一般纳税人
  • 银行存款支付业务招待费
  • 帮客户代付保证金合法吗
  • 付国外客户佣金怎么代扣代缴增值税
  • 营业费用包括哪些?
  • 公司新产品研发上市的意义和价值
  • 零星采购多少不需要发票
  • 应付账款和应付票据的区别与联系
  • mysql的操作方法
  • mysql类似软件
  • 怎么停止u盘自动运行
  • windows xp安装win32程序
  • ubuntu系统怎么用
  • windows7旗舰版开机声音
  • win7登录账号
  • ajax分页查询数据文档效果图
  • apache使用端口
  • python 初级
  • androidstudio国内镜像地址
  • 文件夹怎么变成
  • JavaScript中的数据类型
  • unity中如何修改prefab
  • jquery库有哪些
  • 代扣代缴申报表哪里查询
  • 全国哪些地区社保比例高
  • 消费税纳税申报流程图
  • 代发工资法律依据
  • 农村饮水扶持资金申请报告
  • 国税地税征管体制改革方案
  • 慰问金能直接转账吗
  • 八戒财税兼职
  • 重庆地方税务局2016年2号
  • 2021边疆补助什么时候下来
  • 数字经济与实体经济融合发展的理论探索
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设