当前位置: 首页 > news >正文

北京网站建设新鸿新手学做网站电子版

北京网站建设新鸿,新手学做网站电子版,网站建设销售员话术,西安市住房和城乡建设局官方网站MySQL高级第十七篇#xff1a;数据库主从复制原理及保证数据一致性 一、概述1. 提升数据库的并发能力2. 主从复制的作用#xff1f; 二、主从复制原理三、搭建一主一从环境四、如何解决数据一致性问题#xff1f;1. 方案一、异步复制2. 方案二、半同步复制3. 方案三、组复制… MySQL高级第十七篇数据库主从复制原理及保证数据一致性 一、概述1. 提升数据库的并发能力2. 主从复制的作用 二、主从复制原理三、搭建一主一从环境四、如何解决数据一致性问题1. 方案一、异步复制2. 方案二、半同步复制3. 方案三、组复制 一、概述 1. 提升数据库的并发能力 在实际工作中我们常常将Redis作为缓存与MySQL来配合使用当有请求的时候首先会从缓存中进行查 找如果存在就直接取出如果不存在再访问数据库。这样就提升了读取的效率也减少了对后端数据库的访问压力。 此外对于一般数据库应用而言都是读多写少的当数据库读取数据压力较大时我们可以从成本较小的方案开始优化可以首先考虑优化SQL和索引其次就是缓存策略最后才是主从架构。 2. 主从复制的作用 第一读写分离 在读多写少的情况下可以采用读写分离主库当做写库然后根据实际需要选择使用多个读库分散读的压力提高并发性。 第二数据备份 主从复制其实就相当于一种热备份的机制。 第三实现高可用 数据备份其实就是一种冗余机制当主服务器出现故障是时可以切换到从服务器上提高服务器可用性。 二、主从复制原理 实际上主从同步的原理就是基于binlog进行数据同步的。在主从复制过程中会基于3个线程来操作一个主库线程两个从库线程。二进制日志转储线程是一个主库线程。 当从库线程连接的时候主库可以将二进制日志发送给从库当主库读取事件的时候会在Binlog上加锁读取完成之后再将锁释放掉。从库I/O线程会连接到主库向主库发送请求更新Binlog。 这时从库的I/O线程就可以读取到主库的二进制日志转储线程发送的Binlog更新部分并且拷贝到本地的中继日志。从库SQL线程会读取从库中的中继日志并且执行日志中的事件将从库中的数据与主库保持同步。 总结起来就是三步 步骤1Master将写操作记录到二进制日志binlog这些记录叫做二进制日志事件binary log events步骤2Slave 将 Master 的 binary log events拷贝到它的中继日志relay log步骤3Slave重做中继日志中的事件将改变应用到自己的数据库中。 三、搭建一主一从环境 前边的文章已经有写过这里就不在复述了点击跳转: MySQL主从复制—有手就能学会的MySQL集群搭建教程 四、如何解决数据一致性问题 进行主从同步的内容是二进制日志它是一个文件在进行网络传输的过程中就一定会存在主从延迟这样就可能造成用户在从库上读取的数据不是最新的数据也就是主从同步中的数据不一致性问题。 1. 方案一、异步复制 异步模式就是客户端提交COMMIT之后不需要等从库返回任何结果而是直接将结果返回给客户端这样做的好处是不会影响主库写的效率。但这样可能会存在主库宕机而Binlog还没有同步到从库的情况也就是此时的主库和从库数据不一致。这时候从从库中选择一个作为新主那么新主则可能缺少原来主服务器中已提交的事务。所以这种复制模式下的数据一致性是最弱的。 2. 方案二、半同步复制 半同步复制的原理是在客户端提交COMMIT之后不直接将结果返回给客户端而是等待至少有一个从库接收到了Binlog并且写入到中继日志中再返回给客户端。这样做的好处是提高了数据的一致性当然相比于异步复制来说至少多增加了一个网络连接的延迟降低了主库写的效率。在MySQL5.7版本中还增加了一个参数可以对应答的从库数量进行设置默认为1也就是说只要有1个从库进行了响应就可以返回给客户端。如果将这个参数调大可以提升数据一致性的强度但也会增加主库等待从库响应的时间。 3. 方案三、组复制 异步复制和半同步复制都无法最终保证数据的一致性问题半同步复制是通过判断从库响应的个数来决定是否返 回给客户端虽然数据一致性相比于异步复制有提升但仍然无法满足对数据一致性要求高的场景。组复制技术MGR很好地弥补了这两种复制模式的不足它是MySQL在5.7.17版本中推出的一种新的数据复制技术是基于Paxos协议的状态机复制。简单说一下MGR的工作原理首先我们将多个节点共同组成一个复制组在执行读写事务的时候需要通过一致性协议层的同意也就是读写事务想要进行提交必须要经过组里“大多数人”对应Node节点的同意大多数指的是同意的节点数量需要大于N21这样才可以进行提交而不是原发起方一个说了算。而针对只读事务则不需要经过组内同意直接COMMIT即可。在一个复制组内有多个节点组成它们各自维护了自己的数据副本并且在一致性协议层实现了原子消息和全局有序消息从而保证组内数据的一致性。 事实上Paxos算法远远不止这么简单它经常被作为分布式一致算法广泛使用比如zookeeper就是基于它实现的后边写到zookeeper时还会详细分析…
http://www.hkea.cn/news/14436803/

相关文章:

  • 网站备案意味着什么网摘网站推广法
  • 个人网站欣赏的网站如何做网站在售产品分析
  • 免费广告设计制作网站深圳哪里可以做物流网站
  • 网站建设如何更改背景图片网站推广策划思路是什么
  • 建站模板安装视频教程全集西安建设工程网
  • 外贸网站建设升上去梧州网站推广设计
  • 苏州做视频网站广告公司网络软件公司
  • 海报在线制作免费网站网站侧边栏设计
  • 电脑建网站抖音代运营保证金
  • 网站建设的业务好做吗公司网站服务器维护
  • 企业网站建设中存在的问题做网站需要投标吗
  • html网站首页图片切换圣都装饰
  • 企业做网站400电话作用wordpress标签多重筛选
  • 网站导航栏制作设计帮官网
  • 企业网站建设是什么实现的物质基础和技术支撑拼车平台网站开发
  • 浙江省建设质量协会网站五大跨境电商平台对比分析
  • 二手房公司网站源码公司网站展示有哪些
  • 天柱建设局网站郑州企业网站排行
  • 长沙多用户商城网站建设wordpress营销主题
  • 2345电影新网站模板网站开发人员岗位描述
  • wordpress如何启用全站ssl诊所网站模板
  • 做外贸网站注册什么邮箱我国数字经济报告
  • 政务公开做的好的网站有哪些个人网站怎么建立
  • 松岗网站的建设推广普通话的语文活动
  • 做网站1000以下哪家好站长之家网站查询
  • 如何做好网站的优化的监测评价通过php获取手机网站访客的手机号码
  • 商城网站功能列表wppay wordpress
  • 怎样做建网站做淘客大连网站设计公司
  • 网站的盈利模式wordpress获取评论回复
  • 网站挂马怎么办电商怎么做营销推广天气预报