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

主从切换是怎么保证数据一致的?从库为什么会延迟

前言

主库出问题,一般需要切换从库为主库。那么对于正在同步的数据,如何保证一致性呢?
备库有时候延迟好几个小时的原因有哪些?解决方案是什么?


主从切换是怎么保证数据一致的?从库为什么会延迟

  • 前言
  • 主库出问题了,从库怎么办?
  • 备库为什么会延迟好几个小时?

主库出问题了,从库怎么办?

CTID,就是mysql在写入binlog的时候会生成一个: service-id:10

这样的字符串,前面表示机器的uuid,后面表示在次机器上执行的第几个事务。

单调递增。

从库读取时,只需要根据这个判断是否已经执行过,从库维护了所有执行过的CTID列表。

这样切换主库的时候只需要根据这个判断即可。

备库为什么会延迟好几个小时?

因为主库是并发响应的,从库最开始是单线程同步的。

还有大事物等原因。

mysql已经引入了多线程同步的机制。

一种是通过对于同时进入到commit的事务,是可以并行执行的。msyql的主库会把写入redolog和commit之间的所有事务记录到binlog中。然后在从库中分配到不同的线程work中执行。

第二种是 计算出每一行的hash值,如果两个事务没有相同值,那么就并行执行

第三种是 在第二种的基础上增加了一个约束,即在主库上同一个线程执行的两个事务,在从库也要保证顺序。

http://www.dtcms.com/a/338724.html

相关文章:

  • 理解JavaScript中的函数赋值和调用
  • AAA服务器技术
  • 算法训练营day55 图论⑤ 并查集理论基础、107. 寻找存在的路径
  • 谷歌为什么要将Android的页面大小(Page Size)从传统的4KB升级至16KB
  • 解决 UniApp 自定义弹框被图片或 Canvas 覆盖的 Bug
  • 云原生俱乐部-mysql知识点归纳(3)
  • 2 . 大纲
  • 常用植被物候提取方法 (TIMESATE/R语言/Python)-4.0
  • QChart智能坐标轴
  • 【3-3】流量控制与差错控制
  • Linux的ALSA音频框架学习笔记
  • 为单片机专门定制的Unicode字库和API接口
  • 18650锂电池自动化生产线:智能集成提升制造效能
  • Datawhale工作流自动化平台n8n入门教程(一):n8n简介与平台部署
  • 机器学习深度学习 所需数据的清洗实战案例 (结构清晰、万字解析、完整代码)包括机器学习方法预测缺失值的实践
  • 基于 PyTorch 模型训练优化、FastAPI 跨域配置与 Vue 响应式交互的手写数字识别
  • 【Qt】线程池与全局信号实现异步协作
  • 【qml-5】qml与c++交互(类型单例)
  • JVM垃圾收集器
  • Linux重置 root 密码:从原理到实操
  • 免费OCR工具支持哪些文档格式转换
  • 8.19打卡 DAY 46 通道注意力(SE注意力)
  • RPC高频问题与底层原理剖析
  • 在VSCode中进行Vue前端开发推荐的插件
  • 基于C语言基础对C++的进一步学习_知识补充、组合类、类中的静态成员与静态函数、类中的常对象和常成员函数、类中的this指针、类中的友元
  • Laya的适配模式选择
  • 使用 Ansys Discovery 探索外部空气动力学
  • 龙虎榜——20250819
  • python学习打卡day38
  • 上网行为管理-内容审计